在大多数项目中,我使用多个布局脚本。
有时我需要布局中的某些数据,这些数据是特定于布局的,而不是特定于页面的。虽然使用了哪种布局,但是特定于页面。
因此bootstrap或actioncontroller是选择布局的好地方。但恕我直言,他们不是注入特定布局所期望的数据的好地方。
我能想到的另一个地方就是在布局视图中自己编写一些业务逻辑。虽然这是我不想做的事情:)
您在哪里编写特定于布局的业务逻辑?
- 更新:
特定于布局的业务逻辑可以是;
答案 0 :(得分:2)
这样的东西最好从ViewHelper
完成class ViewHelper_RandomTip
{
public function randomTip()
{
$tip = TipsModel::getRandom();
return "<div><h1>Random Tip</h1><p>$tip</p></div>");
}
// ...
}
然后在您的布局中,将其与
一起使用echo $this->randomTip();
请注意,这是不打算在任何地方运行的示例代码。您是如何从Helper访问模型的,以及如何返回内容完全取决于您。您还必须找到一个方法来使用布局注册ViewHelpers。并且会有人告诉你,你可能无法从View访问该模型(这是错误的)
另请参阅以下相关问题:
并查看Zend Framework further information对{{3}}的工作方式。