1 つのアクション (またはアクションのセット) でレンダリングなしのレイアウトを設定することは可能ですか?
私が知っているように、構成でデフォルトのレイアウトを設定できます。これは、すべてのページでレンダリングされます。「レイアウト」変数に値を渡してアクションベイで変更できますが、レイアウトをまったくレンダリングしないことは可能ですか?
class IndexAction
{
private $template;
public function __construct(Template $template){ ... }
public function __invoke($request, $response, $next = null)
{
if(!$request->hasHeader('X-Requested-With')){
$data = ['layout' => 'new\layout']; //change default layout to new one
}
else{
$data = ['layout' => false]; //I need only to return view ?
}
return new HtmlResponse($this->template->render(
'web::index', $data
));
}
}