使用app-engine-patch發揮Django的威力(一)

researcher

This site has been moved to dreamerslab.com

本站已經移至 dreamerslab.com

摘要

Django是以Python寫成的開放原始碼網路應用程式框架。Django框架讓網路應用程式的開發更輕鬆,Django的主要目標是使得開發複雜的、資料庫驅動的網站變得簡單。Django注重組件的重用性和「可插拔性」,敏捷開發和 Don’t Repeat Yourself。在Django中Python被普遍使用,甚至包括配置文件和數據模型。

因為一些概念差異,一些Django特性不能實現在Google App Engine,其中之一的主要特性即是Django的ORM。這是由於AppEngine的 Datastore 不同於Django的ORM所基於的傳統的關聯式資料庫模型所導致。

app-engine-patch則是此難點的解決方法。該項目可以在這裡找到:http://code.google.com/p/app-engine-patch/

本文將列舉一些理由,來說明為什麼你可能需要在你的項目中考慮使用Django和app-engine-patch。然後用一個範例來證明app-engine-patch的威力。此範例支持Google和非Google帳戶認證。

為何使用Django而非Webapp?

使用Django而不是Google App Engine內建的webapp框架的理由:Django已經被許多類型的網路應用程式廣泛使用多年。此外, Django有著廣泛的開發者討論社群。有許多部落格討論Django ,有個極為常用的郵件列表,以及#djangoIRC頻道。

Webapp是專為Google App Engine開發的,而Django也已成為「標準」的Python網路框架。其他一些框架,則有Pylons或cherrypy。 這些框架大部分是可以在App Engine上工作的,但Django有較為突出的特點。它提供對大型項目而言必備的的重要特性,比如內置的國際支持,快取,認證會話,中間件支持等等。

Webapp缺少這些大部分的特性,而且在目前也難以切換至另一個系統。Django則會減少對於App Engine的依賴。

參考來源

使用app-engine-patch發揮Django的威力(譯者: 星子
Unleash Django with app-engine-patch(原文)

Related Posts


Comments are closed.