带有python的Google App Engine的官方文档建议使用virtualenv并将第三方库安装到项目根目录的子目录中:
$ source /path/to/my/virtualenv/bin/activate
$ cd my/project/root
$ mkdir lib
$ pip install -t lib sqlalchemy
然后,文档说要appengine_config.py
在项目根目录中创建一个包含以下内容的文件:
from google.appengine.ext import vendor
# Add any libraries installed in the "lib" folder.
vendor.add('lib')
在开发服务器可以在运行时找到sqlalchemy的意义上,所有这些工作都是可行的。但是,我的virtualenv本身不能。如果我这样做
$ python
>>> import sqlalchemy
我收到导入错误。这使得除了开发服务器之外难以进行测试是不可能的。是否可以使用一些pip技巧或类似方法使这些lib在开发服务器内部和外部都可用?
我遵循相同步骤的变体,但是
$ ln -s {virtualenv}/lib/python2.7/site-packages lib
这样,在virtualenv中安装的pip也会自动进入lib目录。
然后,每个pip安装将对virtualenv的python和dev_appserver可用,而无需提供目标文件夹以使测试工作可以承受。例如。:
$ pip install sqlalchemy
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句