joe*_*von 2 php model-view-controller zend-framework view-helpers
我的问题需要一些设置,所以请耐心等待:
我成为了一个转换,使用View Helpers从模型中获取数据,而不是将其全部洒在控制器上(帽子提示给Eric Clemmons).它在那里更具可重用性和灵活性.我就喜欢!
我通常做的是在index.phtml中布置模板,然后当我需要从模型中获取内容时,将该片段放在detail.phtml中,因此逻辑尽可能远.
但是,我开始看到需要重用的变量.例如,类别名称.现在,您不希望使用视图助手来反复从模型中获取cat名称.虽然你可以缓存它,但显然太麻烦了.
所以我开始在detail.phtml中使用几行php来设置变量.它再也闻不到了.观点不应该有太多的逻辑.
那你说什么呢?如果var被重用,把它放在控制器中?或者不介意在视图中设置几个变量?
编辑:Alan Storm问了一个viewhelpers的例子:
detail.phtml:
<ul id="productList">
<? foreach($this->getProductById($id) as $product) : ?>
<li><?= $this->escape($product['name']) ?></li>
<? endforeach; ?>
</ul>
Run Code Online (Sandbox Code Playgroud)
(支持自己攻击反短标签)
另一个编辑:我看到没有2个正确的答案.那好吧...
Controller和View都不用于存储应用程序状态.这就是模型的用途.
请记住,MVC中的"模型"不是数据库表!Model是您为应用程序实现业务逻辑的地方,将其存储在数据库中是Model的内部实现细节.但是,您可以在应用程序中使用与数据库无关的模型.
| 归档时间: |
|
| 查看次数: |
856 次 |
| 最近记录: |