我有一个在Google App Engine上运行的django应用程序。我使用djangoappengine和django-nonrel并且它工作正常(在我的App Engine项目目录中使用完整的django源代码)。
我注意到GAE通过向app.yaml
添加以下行来为django提供支持:
libraries:
- name: django
version: 1.5
我想使用它而不是将整个django-nonrel源代码放在我的项目目录中。
当我从项目目录中删除django-nonrel时,我从djangoappengine/boot.py
获得以下ImportError:
ImportError: No module named django.conf
看起来djangoappengine找不到任何版本的django - 不是我的python安装上安装的版本,而不是AppEngine附带的版本。
如何让开发服务器使用AppEngine版本的django? 或者我错过了什么?
更新
当我手动编辑djangoappengine/boot.py
并添加
sys.path.append(r'<PATH TO GAE API>/google_appengine/lib/django-1.5')
有效。如何在不编辑djangoappengine
的情况下添加到路径?
答案 0 :(得分:0)
GAE SDK附带的Django模块是“常规”Django,而不是django-nonrel。 “常规”Django只能处理SQL数据库,它无法处理GAE的数据存储。
如果您使用的是CloudSQL,请使用“常规”Django。如果您正在使用HRD数据存储区,请使用django-nonrel。
您看到的错误是因为djangoappengine(和djangotoolbox)仅适用于django-nonrel。他们不会使用“常规”django。