Django + GAE(谷歌应用引擎):初学者最方便的途径?

时间:2010-03-02 15:40:48

标签: python django google-app-engine web-applications

首先是一些背景信息:

  • 目标:一个中等复杂度的网络应用,我需要维护并可能延续几年。
  • 经验:熟悉python,有一些MVC框架经验(在PHP中)。
  • Desiderata:使用djangogoogle app engine

我广泛阅读了GAE和Django之间的兼容性问题,我知道GAE patchnorel project和其他类似代码。我也明白SDK提供了django“开箱即用”的一些功能。

然而,鉴于我以前没有 Django GAE 的经验,我无法评估使用修补的程度Django的版本将删除重要的功能,或者SDK中提供的框架与Django兼容的程度。所以我对在我的情况下进行的最佳方式感到困惑:

  • 我应该简单地使用修补版本的Django,因为与原版Django的差异很小,我几乎不会注意到它们吗?
  • 我是否应该在“常规django”中完全编写我的应用程序,然后尝试将其移植到GAE,之后我将掌握Django的内部和哲学?
  • 我应该使用随SDK提供的框架编写我的应用程序,然后将其移植到django吗?
  • 我应该......?

提前感谢您的时间和建议。

1 个答案:

答案 0 :(得分:6)

我不确定Django是否适合你。 Django是独立应用程序的一个很好的框架,因为它提供了完整的堆栈解决方案:ORM,身份验证系统和管理界面,仅举几例。您将无法在App Engine上使用任何这些内容。此外,许多代码示例都面向使用内置的Webapp框架 - 您可以在app.yaml中轻松设置缓存过期和身份验证设置以进行配置。

我看到了两条路径之一:

  • 使用Webapp学习App Engine。有足够的资源来学习如何使用数据存储和App Engine的服务,让您忙碌。
  • 从App Engine学习Django。您将学到很多关于使用Django的ORM,管理员好东西,URL路由,表单和模板的知识

通过尝试同时学习两者,你将花费更多的时间来学习Django / GAE兼容性的细微差别,花时间学习Django或GAE。