【发布时间】:2012-05-02 16:15:11
【问题描述】:
我目前正在为我运行的网站创建自己的 PHP mvc,以便它只包含所需的代码,尽可能轻巧快速。
该站点具有相当多的功能和用户特性,因此要确定哪些操作在哪些模型中由哪些控制器控制开始变得相当复杂。
示例
假设我有以下会员特征
- 收藏夹
- 朋友
- 历史
每个都可以由 membercontroller 控制,但我的问题是是将它们全部放在一个模型中还是每个模型都包含在一个模型中。
这三个中的每一个都有很多动作,例如:
- 添加到收藏夹
- 删除收藏夹
- 显示收藏夹
- 添加到历史记录
- 删除历史记录
- 显示历史记录
- 加为好友
- 删除好友
- 给朋友发消息
...等
目前我认为为每个人(最爱、朋友、历史)创建一个模型可能是最好的方法,但它会达到模型过多的地步吗?
目前整个站点有6个控制器,17个模型和25个视图
【问题讨论】:
-
在这种情况下,“模型”是什么意思?数据库实体?数据库实体组?还有什么?
-
与某个站点功能/组相关的每组操作的模型类型。因此,memberactions 可以是一个模型,或者 favourites/friends/history 都可以是单独的模型而不是 memberactions。
-
@Silver89:MVC 中的模型通常是数据的抽象层。我认为收藏夹是与朋友不同的一组数据,您可能希望对其执行不同的操作(阅读:收藏夹模型可以告诉您/做不同于朋友模型的事情)
标签: php model-view-controller oop