我正在为我运行的网站创建自己的PHP mvc,以便它只包含所需的代码,尽可能轻快。
该网站具有相当多的功能和用户功能,因此可以确定哪些控件开始变得非常复杂,哪些模型可以控制哪些操作。
示例
说我有以下会员功能
其中每一项都可以通过 membercontroller 来控制,但我的问题是,是将它们全部放在一个模型中还是每个模型中都有。
这三个中的每一个都有许多动作,例如:
...等
目前我认为每个人的模特(最喜欢的,朋友的,历史的)可能是最好的方式,但是它可以达到你有太多模特的地步吗?
目前整个网站有6个控制器,17个模型和25个视图
答案 0 :(得分:1)
我建议您让ModelController
处理以某种方式修改Model
的操作。
即。 FavoritesController
处理添加,删除和显示收藏(存储在FavoritesModel
上)。保持您的控制器精益/纤薄,更容易测试(更少的方法)并将逻辑应用程序部分保持在一起。
此外,您可以将应用程序划分为较小的应用程序,每个应用程序处理以下内容:
答案 1 :(得分:1)
是的,从技术上讲,你可以拥有太多的模型,但是有一个限制(一如既往)PHP中可以存在多少个类。但它非常大,所以继续前进。您不仅可以同时拥有许多模型,还可以拥有不同类型的模型。所以继续前进,不要因为认为到目前为止你可能没有看到限制来限制你的编码。
所以不是文件的数量,而是你的代码写得多好,例如:是一切正确分组在一起的吗?另见Domain Model。
答案 2 :(得分:0)
在这种情况下,没有“正确”的答案,所以我能给你的只是我自己的解释。我会使用服务将一个或多个模型绑定在一起。因此,用户服务将使用用户模型和收藏夹模型来操纵和显示用户收藏夹。