3

我第一次使用框架(codeigniter)构建 CRM,但在维护 MVC 方法的同时,我无法确定某个模块应该去哪里。该模块会自动生成一个新用户(当创建新公司时)并将登录详细信息通过电子邮件发送到提供的电子邮件地址。

我熟悉瘦控制器和胖模型的想法,但要编译所需的所有信息,模块必须从几个不同的表中请求数据,并将数据插入到多个表中。

到目前为止我考虑过的场景:

  1. 逻辑在大部分信息来自的模型中。
  2. 创建一个全新的模型,只处理这个模块和所需的多个表。
  3. 将逻辑放在处理创建公司的控制器中。
  4. 创建一个新的库或助手,并在需要时调用该模块。

瘦控制器和胖模型似乎表明一两个是正确的选择,但我被引导相信模型应该只处理数据库中的一个表。

确保遵守 MVC 的正确方法是什么?

4

1 回答 1

1

Codeigniter 允许您灵活地使用 MVC 方法。所以答案是哪个选项是:

  • 您(或您的团队)最容易理解
  • 最容易代码维护
  • 别人最容易理解

如果您没有任何其他库并且不了解库,那么将您的代码放入库是没有意义的。就像你所有的模型都是“胖”的一样,但只指向一个表,你是否希望这个模型是唯一一个也指向其他 4 个表的模型?

就个人而言,如果这种“逻辑”只发生在一个地方,那么我会将它放入控制器中,并调用您需要执行每一位代码的 4x 模型。

如果这种“逻辑”出现在多个地方,我会将其放入库中,并在需要时调用它。

于 2012-05-27T09:38:39.510 回答