2

我正在研究一個具有多種類型用戶的應用程序,每個用戶在登錄時都有一個單獨的視圖。例如,一個商業類型的用戶將創建他的個人資料上傳照片等,創建一些其他的東西。然後由企業創建的內容在網絡應用的着陸頁上公開顯示。Backbone.js and rails代碼組織

我在客戶端使用骨幹網,但整個網絡應用不是全部骨幹,業務管理區域是骨幹應用在客戶端運行的獨立部分,現在我期待着從公共登陸頁面,我對如何完成這項工作感到困惑,應該爲這個頁面創建一個新的主幹應用程序,還是將更多的視圖模型和集合添加到同一個應用程序中?

兩個頁面的網址不同,一個是像whatever.com/business和着陸頁是在whatever.com

從業務方面的許多意見和模型是根據需要公衆着陸頁上是相同的。但我想不出如何組織這個問題的好方法。

有沒有人在這樣的事情上工作過。任何見解?

感謝

回答

3

Backbone.js是一個很棒的MVC框架,但是圍繞組織大型應用程序並沒有太多的約定。您需要熟悉一些優秀的設計模式才能充分利用它,否則它會很快變得混亂。

我之前在看AMD。它看起來不錯:
http://backbonetutorials.com/organizing-backbone-using-modules/

這可能幫助過:
http://ricostacruz.com/backbone-patterns/

我也喜歡這個規則書上設計一個好的API。我的寶貝只有8美元!
http://www.amazon.com/REST-API-Design-Rulebook-ebook/dp/B005XE5A7Q

編輯:我最近重構了一個大的backbone.js應用程序。如果我利用Javascript事件驅動的體系結構,我發現構建起來要容易得多。

2

有關於這個主題兩個優秀(PRO)Railscasts,#323 Backbone on Rails Part 1#325 Backbone on Rails Part 2,不幸的是他們是受付費牆保護,但這些錢是值得的。 Ryan使用backbone-on-rails gem來促進Backbone與Rails的集成。

值得推薦做在軌道上的整個MVC處理或者(主要在後端,與位的Ajax的並且沒有任何骨架)或骨幹網(主要是在前端,使用Rails僅作爲存儲引擎)。如果您的應用程序主要包含Javascript或JQuery調用,或者您想要執行實時Web應用程序和實時頁面更新,則選擇Backbone或類似的MVC JS框架(如ember.js)非常有用。由於不確定MVC Javascript框架在技術上是否成熟,我建議堅持使用純Rails,如果您不相信Backbone可以處理您的所有需求。

一個通用體系結構的一個有趣想法是使用JSON API作爲Rails後端和JS MVC前端之間的連接,這意味着後端可以將相同的JSON推送到網頁,就像它對iOS和Android應用程序一樣。