Como faço para instalar uma versão antiga do Django no virtualenv?

87

Isso pode soar como uma pergunta estúpida, já que o objetivo virtualenvé exatamente isso: Instalar alguma versão específica de um pacote (neste caso o Django) dentro do ambiente virtual. Mas é exatamente o que eu quero fazer, e não consigo descobrir.

Estou no Windows XP e criei o ambiente virtual com êxito e sou capaz de executá-lo, mas como devo instalar a versão do Django que desejo nele? Quer dizer, eu sei usar o easy_installscript recém-criado , mas como faço para instalar o Django 1.0.7? Se eu fizer easy_install djangoisso, ele instalará a versão mais recente. Tentei colocar o número da versão 1.0.7neste comando de várias maneiras, mas nada funcionou.

Como eu faço isso?

Ram Rachum
fonte

Respostas:

144

Nunca houve um Django 1.0.7. A série 1.0 subiu apenas para 1.0.4. Você pode ver todos os lançamentos na seção de tags do repositório de código do Django .

Porém, para responder à sua pergunta, não use easy_install, use pip. (Se ainda não estiver instalado, faça-o easy_install pipe nunca toque em easy_install novamente). Agora você pode fazer:

pip install Django==1.0.4
Daniel Roseman
fonte
3
Embora o pip tenha algumas vantagens interessantes sobre o easy_install, "easy_install Django == 1.0.4" funcionaria tão bem neste caso.
Carl Meyer
1
isso não funciona mais. pelo menos não para easy_install - leva a djangoproject.com/m/bad-installer.txt (e pip parece estar quebrado para python2.4 que é o que estou usando no virtualenv). sim, seria melhor se as pessoas usassem novas versões, mas alguns de nós temos que manter o código antigo ...
andrew cooke
1
Eu fiz uma pergunta semelhante em um comentário a este post , com uma resposta sugerindo:pip install git+github.com/django/[email protected]#egg=django==1.2.5
Dave Everitt
O link 'the tags section' está morto, mas lançamentos com versões menores podem ser encontrados aqui: docs.djangoproject.com/en/2.0/releases estranhamente, não encontrei esta página no documento django. substitua '2.0' por '2.1' em alguns meses ..
jerome,
1
Além disso - para ver todas as versões disponíveis que você pode fazer pip install django==(sem um número de versão).
Frankie Simon
3

+1 na resposta do autor da postagem anterior: use pipse puder. Mas, em uma pitada, a maneira mais fácil é instalar uma versão mais antiga seria fazer o download do tarball da página de downloads ou, se você tiver o Subversion instalado, fazer um svn exportda versão que você deseja (todos estão marcados aqui ).

Depois de ter a versão do Django desejada, basta executar o seguinte comando dentro do diretório django:

python setup.py install

Isso instalará essa versão do Django em seu virtualenv.

mazelife
fonte
2

+1 para soluções já mencionadas.

Eu só quero adicionar outra solução.

Para instalar uma versão específica do Django (digamos 1.10.x),

  1. Clone o repositório Django do Github .

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

  2. Vá para o diretório e faça check-out no branch específico.

    cd django

    git checkout origin/stable/1.10.x

  3. Execute o comando de instalação.

    python setup.py install

Tahir Raza
fonte