Wie installiere ich eine alte Version von Django auf virtualenv?

86

Dies mag wie eine dumme Frage klingen, da der eigentliche Zweck von virtualenv genau darin besteht, eine bestimmte Version eines Pakets (in diesem Fall Django) in der virtuellen Umgebung zu installieren. Aber es ist genau das, was ich tun möchte, und ich kann es nicht herausfinden.

Ich bin unter Windows XP und habe die virtuelle Umgebung erfolgreich erstellt und kann sie ausführen. Aber wie soll ich die gewünschte Django-Version darin installieren? Ich meine, ich weiß, wie man das neu erstellte easy_installSkript verwendet, aber wie kann ich es dazu bringen, Django 1.0.7 zu installieren? In easy_install djangodiesem Fall wird die neueste Version installiert. Ich habe versucht, die Versionsnummer 1.0.7auf verschiedene Weise in diesen Befehl einzufügen, aber nichts hat funktioniert.

Wie mache ich das?

Ram Rachum
quelle

Antworten:

140

Es gab nie einen Django 1.0.7. Die 1.0-Serie stieg nur auf 1.0.4. Sie können alle Releases im Abschnitt "Tags" des Django-Code-Repositorys anzeigen .

Verwenden Sie jedoch nicht easy_install, um Ihre Frage zu beantworten pip. (Wenn es noch nicht installiert ist easy_install pip, berühren Sie easy_install nie wieder.) Jetzt können Sie tun:

pip install Django==1.0.4
Daniel Roseman
quelle
3
Obwohl pip gegenüber easy_install einige nette Vorteile hat, würde "easy_install Django == 1.0.4" in diesem Fall genauso gut funktionieren.
Carl Meyer
1
das funktioniert nicht mehr. Zumindest nicht für easy_install - es führt zu djangoproject.com/m/bad-installer.txt (und pip scheint für python2.4 defekt zu sein, was ich in virtualenv verwende). Ja, es wäre besser, wenn die Leute neue Versionen verwenden würden, aber einige von uns müssen alten Code beibehalten ...
Andrew Cooke
1
Ich habe eine ähnliche Frage in einem Kommentar zu diesem Beitrag gestellt , mit einer Antwort, die vorschlägt:pip install git+github.com/django/[email protected]#egg=django==1.2.5
Dave Everitt
Der Link 'the tags section' ist tot, aber Releases mit einer kleineren Version finden Sie hier: docs.djangoproject.com/de/2.0/releases Seltsamerweise habe ich diese Seite aus dem Django-Dokument nicht gefunden. Ersetzen Sie '2.0' in einigen Monaten durch '2.1'.
Jerome
1
Außerdem - um alle verfügbaren Versionen anzuzeigen, die Sie ausführen können pip install django==(ohne Versionsnummer).
Frankie Simon
3

+1 auf die Antwort des vorherigen Posters: Verwenden pipSie, wenn Sie können. Zur Not ist es jedoch am einfachsten, eine ältere Version zu installieren, indem Sie den Tarball von der Downloadseite herunterladen oder, wenn Sie Subversion installiert haben, eine svn exportder gewünschten Versionen ausführen (alle sind hier markiert ).

Sobald Sie die gewünschte Version von Django haben, führen Sie einfach den folgenden Befehl im Django-Verzeichnis aus:

python setup.py install

Dadurch wird diese Version von Django in Ihrer virtuellen Umgebung installiert.

Mazelife
quelle
2

+1 für bereits erwähnte Lösungen.

Ich möchte nur eine weitere Lösung hinzufügen.

Um eine bestimmte Version von Django zu installieren (z. B. 1.10.x),

  1. Klonen Sie das Django-Repo von Github .

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

  2. Gehen Sie in das Verzeichnis und checken Sie in den jeweiligen Zweig aus.

    cd django

    git checkout origin/stable/1.10.x

  3. Führen Sie den Installationsbefehl aus.

    python setup.py install

Tahir Raza
quelle