使用GAE版本的django

时间:2013-11-26 10:08:57

标签: python django google-app-engine django-nonrel djangoappengine

我有一个在Google App Engine上运行的django应用程序。我使用djangoappenginedjango-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的情况下添加到路径?

1 个答案:

答案 0 :(得分:0)

GAE SDK附带的Django模块是“常规”Django,而不是django-nonrel。 “常规”Django只能处理SQL数据库,它无法处理GAE的数据存储。

如果您使用的是CloudSQL,请使用“常规”Django。如果您正在使用HRD数据存储区,请使用django-nonrel。

您看到的错误是因为djangoappengine(和djangotoolbox)仅适用于django-nonrel。他们不会使用“常规”django。