2012-10-03 23 views
1

如果我沒有錯,Laravel的Bundle應該類似於Codeigniter的Hierarchical MVC triad。我有一個內置CI的項目,我想將它遷移到Laravel,所以我試圖匹配一些功能。在CI中,所有這一切都是爲了安裝HMVC擴展,創建適當的文件夾結構,並且您已經可以訪問您新創建的控制器。在Laravel雖然,你創建一個包後,您需要通過添加Laravel vs Codeigniter - 在Laravel獲取CI的HMVC功能

return array('newbundle'), 

application/bundles.php註冊它有沒有辦法讓我自動註冊存在於我的包目錄中的所有(有效)包?如在,而不必明確註冊每個新的捆綁。換句話說,我想讓bundle更具動態性,以便我可以複製一個bundle,將其粘貼到另一個項目中並立即開始使用它。

作爲一個側面的問題,是否有人有一個'正確'的方式來實現與Laravel的捆綁銷售Wordpress與其插件的想法:顯示所有捆綁安裝在捆綁目錄中的列表,但只激活(註冊)選定的?

+0

說實話,Orchestra平臺是如何運作的 - http://bundles.laravel.com/bundle/orchestra – crynobone

回答

5

我不明白爲什麼沒有人給你實際的答案。現在,您可能已經想出瞭如何在旅途中自動加載捆綁包,如果沒有,請查看以下捆綁包。

http://bundles.laravel.com/bundle/autobundle

你的第二個問題,你需要開發一個自定義應用程序/包來管理它的WordPress的方式與插件做。我只能給你這個想法,發展部分是你的。

保留一個數據庫表(示例包)並擁有一個自定義捆綁包或路由/控制器來管理添加/刪除捆綁包,包括將新捆綁包上傳爲zip文件並將其解壓縮到捆綁文件夾中,同時在捆綁表中註冊捆綁詳細信息。每當你想激活插件時,使activate字段爲true,並在應用程序目錄的start.php主文件夾中擁有一個自定義的bundle start方法,該方法可以是一個函數,用於獲取激活的bundle的所有名稱並將它們加載到註冊表。如果您想使用這種方法,您可以避免使用自動綁定,因爲它實際上會加載綁定目錄中的所有內容。

+0

其實,不,我沒有找到解決方案來解決我的問題,這就是爲什麼我把我的Laravel發展擱置了。我回到了Codeigniter。但是你的回答對我來說更有價值。我會盡力回到Laravel。非常感謝@Raf! –