0

我有一些管理员和公共模型都使用的代码。目前有些方法是完全一样的,但是分别存储在 admin 和 public 部分的不同模型中。我创建了一个名为 common 的模块,我想通过让 admin 和 public 模型从 common 模型扩展来存储共享的代码片段。我只是对设置它的结构感到困惑。假设我有:

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 模块,这是一个官方模块,似乎遵循第一个示例,但我不太确定。尽管使用第二种或第三种方式似乎更容易,因为您只需将模块名称添加到开头或结尾即可。从长远来看,我认为最好遵循“正确”的方式来保持一致性。如果有的话,这些中的哪一个是正确的?

4

1 回答 1

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 模型)在公共模块中。

于 2010-12-22T08:46:24.007 回答