2009-02-08 100 views
5

我正在App Engine上啓動一個新項目,Brandon's advice讓我想到了。可以在Google App Engine上運行的最佳Django功能?

Django的許多功能不適用於Google App Engine: 管理界面和 建模框架。

考慮到App Engine上已經內置了一個簡單的框架(「webapp」),我可以freely pick從衆多Python模板解決方案(包括Django的),不佔用自己相對較重的重量(但在這種情況下,閹割)框架如果我不與Django一起使用,我會錯過的最重要功能是什麼?

背景:我只有最小的Django體驗,我正在考慮使用Mako模板(爲了提高速度)。

回答

6

主要的區別是你已經知道它不支持管理和Django的(優秀的)ORM ofcourse。不過,這並不奇怪,因爲Google自己的Datastore API非常出色。你不必學習GQL就可以玩。

但是,使用Django意味着您可以利用更多現有的功能(Django中間件等),並且如果您將來想從Google App Engine中移除,則重寫的代碼將會減少。

另外谷歌發佈了 Google App Engine Helper for Django這可以幫助你設置GAE Django應用程序。

所以,我寧願選擇使用Django而不是純webapp的Google App Engine應用程序。在請求

編輯: Django的現有功能我提到的,我們可以從許多有用的應用,大多中間件方面採取由一天一個巨大的社區的Django開發天。

除了由DJango自己提供的有用的Built-in-Middlewares,還有很多其他的可以套用幾個具體用法。

僅舉幾(這聽上去很有意思我):

並有效地和他們一起玩"Conditional middleware execution in Django"可以得心應手。

尋找更多,你會發現更多。

+0

「你可以利用更多現有的功能(Django中間件等)」 你能否詳細說明一下?這些功能到底是什麼? – nyenyec 2009-02-08 20:49:40

-4

幫你一個忙,不要觸摸應用引擎。

如果或者更確切地說,當谷歌改變規則時,您在設計應用程序上投入的時間和精力就會喪失。它(AppEngine)是適當的,如果你不喜歡它,你實際上已經失去了你的投資。你不能只把你的應用程序運行到別的地方。谷歌不是一個慈善機構 - 他們會改變規則,因爲他們可以把他們的擔憂放在微不足道的小事上。這是最糟糕的鎖定...

0

在編寫本文時,大多數django功能已通過Google Appengine Patch項目的幫助移植到GAE。

還沒有的主要是Django的模型支持,你必須使用GAE db模型。但它並沒有太大的傷害。

剛剛拿到Appengine-Patch並嘗試。

相關問題