我的問題在於尋求最佳實踐,一般建議和洞察力,而不是針對特定問題的解決方案。構建「大型」Rails應用程序的最佳實踐
我在計劃一個我認爲相當大的Rails項目的早期階段。在最簡單的層面上,它爲目標用戶提供了一個餅乾CMS。因此,用戶註冊並選擇一個子域名,併爲CMS提供一個非常基本的網站。
因此整個應用程序大約有4個不同的「面」給它:
- 一個銷售網站上銷售的產品爲最終用戶 - www.myapp.com
- 中央管理區的工作人員可以登錄和管理帳戶等 - www.myapp.com/superadmin
- 用戶自己的網站 - subdomain.myapp.com
- 用戶的管理區/ CMS - subdomain.myapp.com/admin
所以我真正想要的是構建應用程序的最佳實踐。即應該將它們全部整合到一個巨大的應用程序中,還是應該將它分成兩個(或更多)更小的應用程序?
如果作爲一個應用程序部署,我可以看到有關路由的問題,因爲銷售網站和用戶的網站都需要一個根路徑集,另外我不希望爲銷售網站設置的路由可通過用戶的網站。任何事情都可以在Rails或Apache級別完成(mod重寫?),以確保沒有混合的路由?
如果拆分爲2個或更多應用程序,您如何獲得共享相同數據庫的應用程序?這是一個好主意嗎?分割應用程序是否有任何好處(例如隔離應用程序某個區域中的問題,而不是將所有內容都放下)?
我意識到這篇文章引發了很多不同的問題,但感謝您給我提供的任何建議和見解。
好問題,我想聽聽人們對此的想法。 Rails 3被設置爲嵌入式應用程序,因此您可以將管理應用程序放入您的基本應用程序中,但我不確定在此之前要做的最好的事情是什麼。 – PreciousBodilyFluids 2009-11-29 21:25:49