【发布时间】:2014-05-07 04:37:18
【问题描述】:
我想知道创建/命名模型的首选方法是什么?
我的应用程序有一个“用户”模型,其中包含用于创建、获取、更新(等)用户记录的所有相关业务逻辑。
在我的一些控制器中,我可能想要获取多个“用户”记录的列表。
在这种情况下,我应该创建一个名为 Users 的全新模型吗?
在我看来,有几个选择:
我可以向控制器授予数据库访问权限,并且控制器可以查询所有相关用户,然后在我循环访问它们时创建一个用户模型对象。 (坏)
我可以有两个单独的模型,“用户”和“用户”。用户对象将处理创建、获取、更新单个记录,而用户对象实际上只对列出所有用户记录有用。
我不喜欢这样的想法:
$user = new User();
$user->fetchAll();
纯粹出于语义原因。在我看来,一个用户对象应该只与一个用户记录相关。
也许我想错了,我的“用户”模型与数据库中的“用户”表相关,从一开始就应该真正命名为“用户”。
你如何处理这个问题?
【问题讨论】:
-
模型是单数。因为每个应用程序只有一个。它是一层。对于“模型”,您可能意味着domain objects 和域对象的集合。 This post 可能有用。
标签: php naming-conventions inflection