CakePHP业务逻辑层

时间:2011-09-27 16:15:50

标签: php cakephp data-access-layer business-logic-layer

CakePHP似乎没有提到将应用程序的业务逻辑和数据访问层分开。这是我的第一个MVC应用程序,我的“胖模型”变成了非常胖,因为它们包含各种业务逻辑,其唯一真正的共同点是需要访问同一个数据库。

当您听到将业务逻辑从控制器转移到模型中的建议时,最终是否可以接受这种状态? CakePHP是否为单独的业务逻辑层提供了任何结构作为其框架的一部分?

谢谢,Brian

1 个答案:

答案 0 :(得分:7)

没有。听起来你遇到的是Active Record模式的经典缺点。此外,CakePHP全部基于结果关联数组而不是对象实例,这没有任何帮助。我建议你看一下像Doctrine 2这样的软件包。它实现了DataMapper模式而不是ActiveRecord模式。它使您的业务逻辑与数据访问层完全分离。

有CakePHP扩展可以将Doctrine集成到CakePHP中。