2016-11-18 37 views
1

我想用python來使用SQLAlchemy。我的設置是像這樣:是否可以通過在腳本中包含一行來調用virtualenv的python解釋器?

source activate 

不過我最近只是跟着一些瓶教程(瓶也安裝在虛擬ENV):

mkdir project 
cd project 
virtualenv project-env 
project-env/bin/pip install SQLAlchemy 

我導航到bin目錄,並使用啓動環境並注意到這一步並不需要正確運行腳本。 https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world

在從教程蟒文件(run.py)有線路:

#!flask/bin/python 

被這個路徑設定到解釋?我試過了:

#!project-env/bin/python 

在我的腳本中,它不起作用。有沒有辦法做到這一點?任何指針將非常感激!謝謝!

+0

你得到的錯誤信息是什麼? – Billy

回答

2

這是本教程中使用的可怕的shebang行;它是相對的,這意味着它只有在碰巧位於虛擬環境之外的工作目錄時纔有效。

也就是說,對於認領工作,當虛擬ENV是~/foo/bar/project-env,當你運行該腳本,只有它的工作方式是,如果你已經cd版到~/foo/bar。即使腳本在~/foo/bar中,它也不會工作,除非您在那裏編輯cd

使用絕對路徑,或使用規範的shebang線,並首先實際激活虛擬環境。我建議後者(我並不完全相信activate腳本所做的其他調整在某些情況下並不重要),但前者的行爲與您所鏈接的教程期望的相同。

相關問題