2016-01-01 78 views
0

我正在嘗試使用Django (1.9)的新版本。我創建了一個虛擬環境(venv),其中我安裝了新的Django (1.9)。一切似乎正常工作,但當我做manage.py runserver它似乎它使用Django (1.8.7)舊版本。已安裝的Django 1.9,但虛擬環境使用1.8.7

我的venv被激活,所以我不知道它爲什麼表現如此。

我從頭開始安裝cmd命令: enter image description here

你知道問題出在哪裏?

+2

請複製粘貼文本爲代碼引用。 –

回答

6

我想manage.py使用系統範圍的python可執行文件:看看它的shebang(第一行)。嘗試運行python manage.py ...

+0

謝謝,它的工作原理。但是,我必須在每個命令前寫入python嗎? –

+0

這個腳本有一個shebang(第一行指出這個腳本將被運行的程序)。所以當你將它作爲獨立的可執行文件運行時 - 系統範圍的python被使用。這就是爲什麼你需要運行python manage.py,而不是manage.py。 –

+0

這是WIndows。 shebang不起作用,但'.py'將與系統Python安裝相關聯。當你激活時,你的'%PATH%'被更新爲使用virtualenv Python。你將不得不使用'python manage.py'。 –

1

manage.py中的shebang行指向全局安裝的python。如果你把它改成venv python,它應該像正常使用一樣工作。

+0

謝謝,我應該在那裏寫什麼? #!/ usr/bin/env python。我試過絕對路徑(#!C:\ Users \ Milano \ PycharmProjects \ vwproject \ venv \ Scripts python),但它不起作用。 –

+0

Windows不理解shebang。 –

+0

看看venv中的pip腳本。它應該有正確的shebang線。 – rfkortekaas