2

我有一个 PHP MVC 应用程序。我的“M”有域、映射器和工厂层,这些是通过服务层访问的。

通常我需要为 html 选择框生成一个 id/value 对列表。迄今为止,我已将查询放入 Mappers 并返回简单数组,但这感觉不对。映射器用于存储和检索对象,对吗?

我真的不想要检索对象集合的开销,而只是丢弃它们的大部分优点来生成一个简单的数组。我正在考虑将查询移动到服务,甚至可能有一个专门用于查找的服务?这意味着我的应用程序中有两个地方有 SQL 代码,但感觉更整洁。

有更好的选择吗?

4

1 回答 1

0

由于您将编写一个服务层以在获取记录时过滤出正确的记录集合,因此请直接从控制器调用服务函数。服务将调用映射器函数来检索和存储记录。

例如控制器 -> 服务 -> 映射器

这样代码结构将保持整洁,并且您还将遵循 DRY(不要重复自己)原则;不需要在两个地方进行 SQL 查询。

于 2014-02-27T06:51:18.257 回答