[英]Google App Engine Flask Project with PyCharm - sys.path.insert, virtualenv, site-packages
我有一個帶有以下代碼的Hello World項目:
import sys
import os
sys.path.insert(1, os.path.join(os.path.abspath('.'), 'venv/lib/python2.7/site-packages'))
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
前三行是必需的,否則我會在控制台中收到此錯誤消息
from flask import Flask
ImportError: No module named flask
前三行,特別是sys.path.insert,有點難看-是否有另一種方法可以設置站點包的系統路徑,而不必在代碼中以這種方式聲明?
我正在使用virtualenv,以防萬一。
您應該使用vendoring機制建立的App Engine應用程序的第三方庫。 無需修改文件中的sys.path
。 直接在應用程序根目錄中創建lib目錄,並通過appengine_config.py
文件告訴您的應用程序如何在此目錄中查找庫。
from google.appengine.ext import vendor
# Add any libraries installed in the "lib" folder.
vendor.add('lib')
將pip與-t lib標志一起使用可在此目錄中安裝庫。
$ pip install -t lib [lib-name]
要么
$ pip install -t lib -r requirements.txt
看看這個答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.