Zend Expressive:如何使用 Zend View 更改布局
Zend Expressive: how to change layout using Zend View
Zend Expressive 在使用 Zend View 时默认为 layout
模板。我注意到 PhpRenderer class 中的 addTemplate($template)
函数,但是在哪里以及如何将替代模板添加到 layout
?
在动作的中间件工厂中,在动作本身中,还是在其他地方?
将 layout
键传递给 data
数组中渲染器的 render()
方法似乎足以在返回响应之前切换布局。
例如:
class HomeAction
{
public function __invoke($request, $response, $next)
{
$data = [
'layout' => 'layout::default',
// or 'layout::admin',
// or 'layout::alternative',
];
$body = $this->template->render('app::home', $data);
return new HtmlResponse($body);
}
}
我强烈建议观看存储库及其在 github 上的问题更新。
Zend Expressive 在使用 Zend View 时默认为 layout
模板。我注意到 PhpRenderer class 中的 addTemplate($template)
函数,但是在哪里以及如何将替代模板添加到 layout
?
在动作的中间件工厂中,在动作本身中,还是在其他地方?
将 layout
键传递给 data
数组中渲染器的 render()
方法似乎足以在返回响应之前切换布局。
例如:
class HomeAction
{
public function __invoke($request, $response, $next)
{
$data = [
'layout' => 'layout::default',
// or 'layout::admin',
// or 'layout::alternative',
];
$body = $this->template->render('app::home', $data);
return new HtmlResponse($body);
}
}
我强烈建议观看存储库及其在 github 上的问题更新。