在CakePHP中的视图中放置显示逻辑的最佳实践

时间:2020-03-06 14:44:19  来源:igfitidea点击:

我有一个CakePHP 1.2应用程序。

我遇到了需要做一些逻辑以在视图中正确呈现事物的情况。

例子:
我有一个称为类型的表。有各种类型的标志,因此每一行都设置了一个或者多个BOOL字段。对于一种类型,我将RTF的内容存储在另一个字段中。

因此,当我在视图中显示所有错字的列表时,我想为存储RTF的类型创建一个链接。否则,我不想显示链接。

这种逻辑的最佳位置在哪里?

我想使用html-> link来创建链接,但是我不能在模型内部使用它。逻辑应该进入模型吗?如果是,我应该在模型中构建HTML吗?链接?

解决方案

我建议在视图中保留该逻辑,在模型中构建HTML会破坏整个视图/模型的分离。我认为视图逻辑没有任何问题,就我个人而言,我倾向于将其约束为基本条件。

最终,我认为这个想法正在弄清楚这种逻辑最适合的地方。在这种情况下,逻辑是"如果我具有某种类型,我应该提供指向它的链接",这是视图问题,而不是模型问题。

构建自己的AppHtmlHelper,该AppHtmlHelper扩展HtmlHelper并为我们进行检查。