2009-08-11 59 views
0

我是MVC编码风格的新手,我无法决定是否将代码放在正确的位置。我有一个项目的费率列表,费率有不同的时间表。我想要做的是显示当天每个项目的最高费率。所以说,如果第1项有3个比率,其中2个比率今天重叠,它将选择这两个比率中的最高值并显示它。mvc新手,分割代码问题

我把它放在视图中,因为它适用于我显示数据的方式。这是在cakephp中,所以如果这改变了你认为应该应用控制器/视图的方式,它就是一个Web平台。

回答

1

我通常把我所有的逻辑放在控制器和模型中,这样我的视图只有标记和输出语句。这会让你的观点更加清晰,尤其是如果你在非程序员可能正在编辑视图的地方(例如:前端实现者或内容人员),那么你就不会冒险搞砸了。通常,我比模型更喜欢薄控制器,甚至更薄的视图(薄与每个部门的逻辑量有关)。

+0

是的,这是有道理的,谢谢你的意见。我现在将它移动到控制器。 – Adrian 2009-08-12 01:24:50

+1

祝你好运!控制器通常是MVC中误解最多的组件。很多时候人们都试图在控制器中做太多事情,并且弄得一团糟。 – 2009-08-12 02:02:44

+0

我会继续前进,并将其移至模型中,因为我更喜欢胖模特。您可以执行Model :: getRate($ itemNum,$ time)并将当前时间传递给$ time,如果您将其定义为正确的话。让控制器进行调用并将答案发送给视图,但我不会拥有所有这些逻辑控制器端。 – 2009-08-12 04:56:31

0

我把可重用的视图代码分离成元素。并将元素放置在元素文件夹内的相应控制器文件夹中。 所以页面控制器将有一个元素文件夹调用/ app/views/elements/page