这是在MVC应用程序上构建模型的好方法吗?

时间:2010-09-29 17:58:31

标签: php model-view-controller zend-framework

这更像是“我做得对吗?”问题

我正在使用MVC框架(Zend Framework),并想知道这是否是构建模型的最佳方式。

在这种情况下,我有一个用户组模型,并在编码一段时间后,我意识到在我的控制器上,我正在重复一些东西,如查询返回可见组。

$model->fetchAll( array(
     'enabled = 1',
     'visible = 1'
) );

为了减少代码重复,我在这个模型上创建了一个返回可见组查询的方法。

基于同样的情况,我还创建了许多其他方法,如隐藏组,禁用组等。

这是避免代码重复的最佳方法吗?我担心的是,如果我继续在控制器上插入该代码,如果将来可见组的业务规则发生变化,我将会非常头疼。

与此同时,我也担心,如果我遵循这种新方法,我将最终得到一个充满方法的臃肿模型来返回查询。

你如何处理这种情况?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

如果你正在编写查询来获取控制器中的数据,那么mvc的模型层呢?我会写一个单独的图层来获取,添加,编辑我的域模型。你可以看看php here中的存储库模式。