Как мне установить старую версию Django на virtualenv?

87

Это может показаться глупым вопросом, так как основная цель virtualenvзаключается именно в этом: установка некоторой конкретной версии пакета (в данном случае Django) внутри виртуальной среды. Но это именно то, чем я хочу заниматься, и я не могу этого понять.

Я использую Windows XP, успешно создал виртуальную среду и могу ее запустить, но как мне установить в нее нужную мне версию Django? Я имею в виду, что я знаю, что нужно использовать только что созданный easy_installскрипт, но как мне заставить его установить Django 1.0.7? Если я это сделаю easy_install django, он установит последнюю версию. Я пытался ввести номер версии 1.0.7в эту команду разными способами, но ничего не помогло.

Как мне это сделать?

Рам Рахум
источник

Ответы:

144

Django 1.0.7 никогда не существовало. Серия 1.0 поднялась только до версии 1.0.4. Вы можете увидеть все выпуски в разделе тегов репозитория кода Django .

Однако, чтобы ответить на ваш вопрос, не используйте easy_install, используйте pip. (Если он еще не установлен, установите, а easy_install pipзатем никогда больше не касайтесь easy_install). Теперь вы можете:

pip install Django==1.0.4
Дэниел Розман
источник
3
Хотя у pip есть несколько хороших преимуществ по сравнению с easy_install, "easy_install Django == 1.0.4" в этом случае будет работать так же хорошо.
Carl Meyer
1
это больше не работает. по крайней мере, не для easy_install - он ведет к djangoproject.com/m/bad-installer.txt (и pip, похоже, не работает для python2.4, что я использую в virtualenv). да, было бы лучше, если бы люди использовали новые версии, но некоторые из нас должны поддерживать старый код ...
Эндрю Кук
1
Я задал аналогичный вопрос в комментарии к этому сообщению с ответом, предполагающим:pip install git+github.com/django/django@1.2.5#egg=django==1.2.5
Дэйв Эверит
Ссылка "раздел тегов" мертва, но выпуски с дополнительной версией можно найти здесь: docs.djangoproject.com/en/2.0/releases, как ни странно, я не нашел эту страницу в django doc. через несколько месяцев замените '2.0' на '2.1' ..
Джером
1
Также - посмотреть все доступные версии можно pip install django==(без номера версии).
Фрэнки Саймон
3

+1 к ответу предыдущего автора: используйте, pipесли можете. Но, в крайнем случае, самый простой способ - установить старую версию - это загрузить тарбол со страницы загрузок или, если у вас установлена ​​Subversion, сделать svn exportвыпуск, который вы хотите (все они отмечены здесь ).

Когда у вас будет нужная вам версия Django, просто выполните следующую команду в каталоге django:

python setup.py install

Эта версия Django будет установлена ​​в ваш файл virtualenv.

мазелиф
источник
2

+1 за уже упомянутые решения.

Я просто хочу добавить еще одно решение.

Чтобы установить определенную версию Django (скажем, 1.10.x),

  1. Клонируйте репозиторий Django из Github .

    git clone https://github.com/django/django.git

  2. Зайдите в каталог и сделайте заказ в конкретную ветку.

    cd django

    git checkout origin/stable/1.10.x

  3. Запустите команду установки.

    python setup.py install

Тахир Раза
источник