2017-09-08 2 views
0

Ich habe gerade virtualenv und virtualenvwrapper auf meinem Computer installiert. Jetzt möchte ich es verwenden, um mit Django zu arbeiten. Wenn ich mkvirtualenv django von ~ ausführen, bleibt der Interpreter dort. Bedeutet das, dass ich dort meine Django-Dateien erstellen kann? Oder ist die Umgebung nicht das virtuell? Soll ich stattdessen meinen eigenen Ordner erstellen, in dem ich am Projekt arbeite? Ich dachte, mkvirtualenv würde automatisch für mich eine erstellen und mich dort auf den Lauf workon nehmen, sonst, was ist der Sinn der Verwendung von virtualenvwrapper sogar?Wo sollte ich sein, wenn ich in einem virtualenv arbeite?

EDIT: Diese paar Zeilen von meinem Bash_profile könnte Ihnen helfen:

export WORKON_HOME=$HOME/.virtualenvs 
export PROJECT_HOME=$HOME/Devel 
source /usr/local/bin/virtualenvwrapper.sh 

Antwort

2

virtualenwrapper die virtualenv in Ihrem ~ $ WORKON_HOME/Verzeichnis erstellen. Dies ist nur das venv und unterscheidet sich von jedem assoziierten "Projekt" -Verzeichnis, das Sie verwenden möchten (oder nicht ...) und welches virtualenvwrapper in der Tat nicht erstellt wird.

IOW, zu diesem Zeitpunkt befinden Sie sich genau im selben Verzeichnis wie bei der Ausführung des Befehls mkvirtualenv.

Wenn Sie diese Venv zu einem Projektverzeichnis zuordnen möchten, müssen Sie dieses Verzeichnis erstellen (wenn es noch nicht vorhanden ist), und dann - mit Venv aktiviert - laufen setvirtualenvproject /path/to/your/projectdir (oder cd /path/to/your/projectdir und hier laufen setvirtualenvproject ohne Argument).

einmal damit fertig, das nächste Mal, wenn Ihr Venv mit workon myenv aktiviert, werden Sie automatisch zu Ihrem Projektverzeichnis zu cd'ed werden, und die cdproject Befehl Sie sich an anderer Stelle, wenn Sie cd bringen.

Wie aus anderen Gründen zu verwenden (oder nicht) virtualenwrapper, können Sie das Dokument lesen und selbst herausfinden, welche anderen Funktionen es zum rohen virtualenv hinzufügt und ob Sie diese Funktionen wollen oder nicht.

FWIW das Verhalten, das Sie erwartete (sowohl die Venv und das Projekt dir zu schaffen) gegeben durch the mkproject command

+0

Was bedeutet "IOW"? –

+0

@LaurentLAPORTE In anderen Worten (autrement dit) –

0

Der Hauptvorteil des virtualenvwrapper die Trennung von Ihrer Umgebung aus einem bestimmten Arbeitsverzeichnis ist. Aktivieren Sie einfach Ihre Umgebung mit:

workon django 

Die Eingabeaufforderung sollte sich ändern:

(django) 

Jetzt sind Sie frei von jedem Verzeichnis arbeiten Sie wollen.

Verwandte Themen