PHP MVC应该提交与编辑新闻相同的视图文件?

时间:2012-03-04 04:02:52

标签: php model-view-controller

用户可以提交新闻并在之后进行编辑。我的问题是,他们是否应该使用相同的视图文件,其中包含几个ifs if(page == edit) echo "edit news" else echo "submit news"和类似的?

2 个答案:

答案 0 :(得分:0)

我认为为添加/编辑共享相同的表单是要走的路,而且更多是干的(不要重复自己)。在Ruby on Rails中,这是一个非常好的练习/标准。

所以是的,创建两个用于添加和编辑的视图,但在两个视图中包含相同的表单,所以你会有类似的东西:

create.php
edit.php
_form.php

并且您只需在每个文件中包含_form.php。

我仍然会创建两个视图,因为大多数时候你有不同的文本,图像和表单周围的其他东西,所以如果你不想在任何地方都有 ifs ,我会创建两个保持井井有条和清洁的观点:)

答案 1 :(得分:0)

与RoR狂热分子告诉你的相反:视图是不同类的完整实例,而不仅仅是愚蠢的模板。正确的View负责表示逻辑并且可以处理多个模板。

在这种情况下,你基本上做同样的事情。您将使用具有相同模板的相同视图。即使在datamapper(不要与同名的ORM混淆,没有关系)级别,应用程序也会使用相同的UPSERT语句执行所有相同的字段。只有一种情况newsIdNULL,而另一种情况 - 某些数字,表示表中的主键。