Ale*_*tau 26 php zend-framework zend-framework2
我正在学习ZF2.0测试版.在ZF1中,我们可以在控制器中动态更改布局:
Zend_Layout::getMvcInstance()->setLayout('layoutname');
Run Code Online (Sandbox Code Playgroud)
但是在ZF2.0中, Zend\Layout类没有方法getMvcInstance().我认为它可以使用依赖注入但不确定.
Jur*_*man 57
ZF2正在大力开发中,不能保证它现在的工作方式,它将是ZF2达到稳定状态时的工作方式.
但是,Zend\Mvc的新视图层最近已合并,因此您现在应该可以执行此操作(使用当前主控):
public function somethingAction ()
{
// Do some intelligent work
$this->layout('layout/different');
}
Run Code Online (Sandbox Code Playgroud)
我发现在动作中设置模板的最佳方法是这样的
public function someAction() {
$viewModel = new ViewModel();
$viewModel->setTemplate('layout/custom');
return $viewModel;
}
Run Code Online (Sandbox Code Playgroud)
在你module.config.php
确保你已经设置你的合适template_map
路径.
'view_manager' => array(
'template_map' => array(
'layout/custom' => __DIR__ . '/../view/layout/custom.phtml'
),
),
Run Code Online (Sandbox Code Playgroud)
小智 7
public function someAction() {
$layout = $this->layout();
$layout->setTemplate('layout/custom');
$viewModel = new ViewModel();
return $viewModel;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
31996 次 |
最近记录: |