3

CakePHP 似乎从未提及分离应用程序的业务逻辑和数据访问层。这是我的第一个 MVC 应用程序,我的“胖模型”变得非常胖,因为它们包含各种业务逻辑,其唯一共同点是需要访问同一个数据库。

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

谢谢,布赖恩

4

1 回答 1

7

不。在我看来,您遇到的是 Active Record 模式的经典缺点。此外,CakePHP 完全基于结果关联数组而不是对象实例也无济于事。我建议你看看像Doctrine 2这样的包。它实现了 DataMapper 模式而不是 ActiveRecord 模式。它使您的业务逻辑与您的数据访问层完全分离。

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

于 2011-09-27T16:30:17.300 回答