我們計劃將我們當前的代碼遷移到Symfony2項目。
在我們的案例中,每個應用程序被認爲是我們運營的國家。因此:
- 每個應用程序都有一個唯一的頂級域名。
- 每個應用程序將具有相同的子域。
- 每個應用程序都有自己的數據庫。每個應用程序的數據庫結構都是相同的。
- 應用程序將共享相同的業務邏輯。業務邏輯中的任何差異將被抽象爲配置文件。應該有一個基本配置文件,應用程序可以用應用程序特定的配置來覆蓋。
- 應用程序將共享大部分模板,但也可能存在特定於應用程序的模板。
可以通過自身途徑
- 多回購
- 每個應用程序都將是一個Symfony2的項目。
- 所有的開發都將以捆綁方式進行,每個應用程序通過作曲者加載相同的捆綁包。
- 這種方法會使開發非常繁瑣。理想情況下,我想測試在所有國家的任何變化,但不運行作曲家等
- 使用多個內核
- 每個應用程序的單一回購中的多個應用程序必須在
app/
文件夾它自己的應用程序的建議在here。 - 複製整個應用程序文件夾似乎有點hackish。不確定這是否是推薦的做法?
- 每個應用程序的單一回購中的多個應用程序必須在
- 修改的Symfony2支持多種應用
- 修改Symfony2的核心/控制檯/無論支持多種應用。
- 是否有任何現有的軟件包/示例已經這樣做?
- [你的想法在這裏]
- 是否還有其他可能的方法?
問題
什麼是添加在Symfony2的多個應用程序支持的最佳方法呢?
感謝您的想法。我們決定採用你的方法。我們的配置目前駐留在我們的捆綁包中。該擴展然後根據國家(即應用)決定要加載哪個配置。我們必須修改AppKernel和Console以瞭解多個應用程序。 – Nicodemuz
很高興解決! –