Django与App Engine - 2012更新

7 投票
2 回答
4799 浏览
提问于 2025-04-17 12:50

在你关闭这个话题之前,是的,这个问题之前有人问过,但上一次是在2010年初。

现在有没有更新的办法可以在Google App Engine上使用Django?Django-norel看起来有点过时,而且它在处理JOIN(也就是多对多关系,这个我需要)方面的努力也不太行。我对Django还没深入了解,所以如果换个其他框架,能让我省心而且还支持ORM,我也会觉得这是个不错的选择。

从长远来看,我想在Google App Engine上运行一些能用Django的ORM功能和模板功能的东西,所以我会接受任何能满足我需求的解决方案。

(给未来的读者,我最后选择了Flask,以及Google App Engine自带的数据存储模型。)

2 个回答

4

是的,现在Google App Engine支持Django框架。你可以查看这个链接了解更多信息:https://developers.google.com/cloud-sql/docs/django

现在,你需要申请一个有限的预览版本,可以通过这个链接进行申请:https://developers.google.com/cloud-sql/docs/before_you_begin

他们在不到一周的时间内就回复了我的申请。

5

Django-nonrel 这个项目并没有过时。虽然之前的开发者离开了,但现在已经在 GitHub 上继续有人在开发:https://github.com/django-nonrel

基本上,你在 Google App Engine 上运行 Django 有两种选择:
1. 使用 Django-nonrel 和 Google App Engine 的存储。你的数据会存储在一个 NoSQL 数据库里,这种数据库有它的优缺点,但你大部分时间还是可以使用 Django 的 ORM 类。
2. 使用普通的 Django 和 Google Cloud SQL。Cloud SQL 就是云端的 MySQL:对大多数开发者来说应该很熟悉。

目前 Google Cloud SQL 还在预览阶段。你可以免费使用,但数据库的大小限制在 10Gb。常见问题解答中提到:

在 2011 年,我们不会对这个服务收费。未来开始收费时,我们会提前至少 30 天通知你。

关于 App Engine 的 Datastore 费用,可以在 这里 查看。

撰写回答