2009-07-20 19 views
0

我對Django和Rails都很陌生。我正在考慮開發一個Web 2.0風格的應用程序,並且正在計劃公開Restful服務,我的UI層將調用它來進行CRUD操作(類似於ADO.NET數據服務)哪個框架提供與ADO.NET數據服務相似的功能

我尚未決定平臺並正在尋找一些建議,在哪個方面發展?

我目前正在考慮Ruby on Rails或Django。

使用DJango/Python的好處是,我可以將代碼轉換爲谷歌AppEngine,但是在一些代碼中,我聽到Django不是RESTful。

我也是Ruby和Python的新手。那麼,你會建議在哪個平臺上使用?

回答

0

那麼,如果你想將視圖和控制器與REST耦合,那麼你是對的,因爲Django不是RESTful,因爲與Django你必須(德)序列化Django的對象,並在前端使用你最喜歡的JavaScript框架自己操縱。說,如果你唯一的擔心是發送和接收數據RESTfully而不關心如何去做,那麼django應該是足夠的,因爲你已經爲你的心臟。

0

Django適用於REST應用程序。 Rails聲稱提供了一些使REST更容易的功能,但它在很大程度上是不準確的 - 像人類可讀的URI對REST並不重要。 Rails爲你自動生成POST/GET/DELETE/PUT東西,但在Django中也很容易做到 - 它實際上與REST沒有多大關係,它只是正確的HTTP使用。

REST是一種通用的體系結構,它有非常明確的約束,但是沒有一種單一的方法可以完成REST應用程序。 REST的架構師Roy Fielding就一些常見的誤解進行了很好的討論:http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven

我推薦使用Python和Django,但不推薦使用REST相關的原因。 (更好的文檔,更好的API與Django,不那麼討厭的猴子修補和黑魔法,更少的耦合等)

0

RESTful接口用於構建分佈式應用程序。你的UI層和服務層是否真的需要物理隔離?看起來對我來說過分了。