2012-05-26 126 views
3

我发现django后又写了几个应用程序。然后,我发现了Google App Engine,并且很高兴能够给它一个旋转,尤其是它专门提到了python和django。Google App Engine和django-nonrel

我使用GAE hello World应用程序确认了使用python 2.7进行GAE安装。然后我遇到了django-nonrel测试应用程序的问题。然后用Googling单个错误结束了python路径添加了大约7个不同的东西,直到达到我无法解决的错误。

从外观上看,我似乎已经在某种程度上使用了Windows,所以我在VM上安装了全新的Ubuntu副本并​​重新开始。通过验证的python 2.7,将GAE放在推荐位置,克隆了几个软件包,并将它们象征性地链接到提供的测试应用程序文件夹中。当我./manage.py runserver它再次踢出了相同的错误消息,使我在Windows中停滞不前。

我的系统级问题是django-nonrel因其主要开发人员的辞职而失去动力。 GAE没有停下来,两者之间正在形成差距。这个观察是否正确?如果社区要去哪里?它是凯吗? (http://code.google.com/p/kay-framework/)

它使用Google自己的最小Python框架工作吗?它是Java而不是Python吗?

我怀疑有成千上万的人在做GAE项目,但我并不感觉良好的走向。有很多人仍然对django-nonrel有信心吗?我意识到我可能会错过像路径变种或其他东西那样简单的东西,但如果我应该学习其他东西,我不想继续寻找它。

回答

4

我正在积极地使用django-nonrel来完成一个我已经工作了几个月但尚未启动的项目。上个星期,我收到了一位开发人员的建议,目前正在开发django-nonrel来试用最新的分支,该分支正在运行django 1.4。请注意,django 1.4并未从GAE SDK正式提供。尽管如此,感觉django-nonrel正在前进,并且它的文档已被留在尘土中。您可能需要一些开发版本才能使用最新,最好的版本。

django-nonrel可能已经失去了一些动力,但我认为它已经死亡。有一点需要注意的是,大多数活跃的开发人员将它与mongo-db一起用作后端。这现在不是问题,但我担心mongo-db版本和appengine版本可能会分裂 - 希望这不会发生。

我在SO和线上邮件列表中遵循App Engine线程的观点是,声音多数在Java上。在python用户中,通用平台是webapp2 + app引擎原生模型+ Jinja2或类似的模板库。

从使用Django的nonrel我的经验:

优点:

  • 我想工作的第三方Python库,这为我节省了很多时间。例如,django-social-auth给了我facebook和twitter登录,几乎没有任何工作。

  • 为您提供关闭AppEngine到另一个python + mongo平台的潜力。

缺点:

  • 旧版本缺少对祖先查询的支持,但是这就是现在的1.4分支。

  • 你是你自己的支持。还有其他一些非常有用的人,但我不得不跳入代码库来修复问题并添加功能。我做了几次这样的事情(例如,当App Engine SDK发布bug时),但这很少见。

  • django花费比webapp2更长的时间来加载,但是如果你没有使用django.contrib中的everyhing,这并不坏。

  • 你没有得到ndb的善良。你错过了ndb实体缓存。不过,我发现我更经常使用查询,而不是ndb缓存,所以这可能会或可能不会是一个大的损失。