我正在制作一份报告,显示有关我们公司销售地点的信息。其中一个信息是该位置的“最后访问日期”。如果从未访问过该位置,我必须以红色显示(使用当前语言)“从不”。有几个像这样的值,这只是我正在使用的例子。
目前我的位置模型如果没有访问过该位置,则返回NULL(直接来自数据库)。
所以我的问题是,我是否使用
#3,我认为这是最灵活的。但是这个简单的案例是否过早地添加了这种高级功能?
非常感谢任何想法!
注意:我们公司的框架是多年前编写的一些内部PHP框架。
答案 0 :(得分:4)
由于视图必须检查值以确定它是否应该是红色,我认为没有理由不让它直接处理null
。毕竟,“从不”是一个显示细节。
答案 1 :(得分:2)
选项3将是最好的决定。模型应该负责所有数据值,控制器,业务逻辑和视图表示。
保持视图尽可能简单并避免在其中嵌入代码始终是个好主意。虽然您可以在控制器中处理此问题,但需要在使用此模型的每个控制器中进行复制。如果你需要做出改变,这可能会在未来产生问题。
答案 2 :(得分:1)
模型的责任是提供有意义的数据。在你的情况下,null可能就像你可以得到的那样有意义。 我对MVC的方法(人们使用MVC的方法和人们一样多)是使用ViewHelper类: 1)解耦视图和模型 2)以优化用于呈现的方式将数据返回到视图
注意:不同的视图可以有不同的ViewHelper。 注意:$ this-> salesLocations-> lastVisit将通过SalesLocationViewHelper方法传递。
希望这是有道理的