2010-12-21 80 views
0

我有一些由管理員和公共模型使用的代碼。目前有些方法完全相同,但存儲在admin和public部分的單獨模型中。我創建了一個名爲common的模塊,並且我想通過讓管理員和公共模型從通用模型擴展來存儲共享代碼段。我只是對結構感到困惑而已。假設我有:Kohana 3擴展模塊模型文件結構

Model_Post extends Model 
Model_Admin_Post extends Model 

應的結構是這樣:

modules/common/classes/model/common/post.php 
Model_Post extends Model_Common_Post 

modules/common/classes/common/model/post.php 
Model_Post extends Common_Model_Post 

modules/common/classes/model/post/common.php 
Model_Post extends Model_Post_Common 

我托克看看幾個模塊它似乎有所不同,所以它是真的剛剛到你如何構建它的感覺?我注意到auth模塊,這是一個官方模塊似乎遵循第一個例子,但我不太確定。儘管使用第二種或第三種方法似乎更容易,因爲您只需將模塊名稱添加到開頭或結尾。從長遠來看,我認爲按照「正確」的方式來保持一致性會更好。哪些是正確的,如果有的話?

回答

0
// modules/common/classes/model/common/post.php 
Model_Common_Post extends Model {} 

// ADMIN/application/classes/model/admin/post.php 
Model_Admin_Post extends Model_Common_Post {} 

// PUBLIC/application/classes/model/post.php 
Model_Post extends Model_Common_Post {} 

所以,你的公衆和管理模式應該放在他們的應用程序顯示目錄,共同文件(common_post模型)是常見的模塊中。