如何在Google App Engine中部署Django应用程序?

时间:2015-02-14 08:44:03

标签: python django google-app-engine

我正在尝试在GAE中启动Django应用程序并在出错后碰到错误。

我尝试了这个例子:https://github.com/GoogleCloudPlatform/appengine-django-skeleton,并得到了:

ImportError: No module named djangoappengine

我尝试了这个例子:https://code.google.com/p/google-app-engine-samples/downloads/detail?name=django_example_20080409.tar.gz,并得到了:

ImportError: No module named django.core.handlers.wsgi

我尝试启动一个Django项目并让它在GAE中运行,那里有很多不同的错误。

有一个简单的例子吗?我准备更新,这是当前版本:

Python版本:2.7.5

Django版本:1.6.5

GAE版本:1.9.17

2 个答案:

答案 0 :(得分:2)

您可以将Django与您的应用程序一起上传,以便可以导入或使用提供的版本。尝试将其放在与app.yaml相同的目录中以上传它。

将此添加到您的app.yaml以访问提供的版本:

libraries:
- name: django
  version: "1.5"

你可以在不上传的情况下导入Django。如果您需要未提供的特定版本,则必须将其包含在您的应用程序中。

根据此链接,您还可以阅读有关如何在您的应用程序中包含导入的内容,最新版本的Django GAE提供的是1.5 https://cloud.google.com/appengine/docs/python/tools/libraries27

因此,如果您想要1.6.5,您必须将其与您的应用程序一起上传。你可以在这里阅读:How to include third party Python libraries in Google App Engine?

请参阅此页面,了解有关GAE上Django的具体说明:https://cloud.google.com/appengine/docs/python/cloud-sql/django

答案 1 :(得分:1)

djangoappengine不是普通Django的一部分,也不是GAE使用的Django的一部分。你正在混合djangos。要使用djangoappengine,您需要使用为非关系型非SQL数据存储区设置的Django的某个分支,例如主GAE数据存储区。您将需要使用django non-rel,它附带一个定制版本的Django(1.6版测试版,但1.5.5版本),可以在GAE上运行良好。根据Paul C概述的方法,以下是您要安装的软件包:

http://djangoappengine.readthedocs.org/en/latest/installation.html

这样,您不必使用cloud-sql关系数据存储区,并且可以使用使用db和ndb方法优雅工作的常规GAE非关系数据存储区。