symfony2 - 在运行时更改布局

Car*_*rlo 0 symfony twig

可以在Symfony2中在运行时更改布局(使用twig)吗?

布局应该根据从数据库中获取的记录而改变,所以我想实现一种LayoutManager来决定为每个请求加载什么布局,但是我仍然找不到在运行时执行此操作的方法.

Igo*_*vić 5

树枝模板

{% extends myLayoutName %}

{% block my_block_with_content %}
    Some content here
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

调节器

public function myAction() {
    $layoutName = '...'; // Calculate layout name

    return $this->render(
        'AcmeAcmeBundle::template_name.html.twig', 
       ['myLayoutName' => $layoutName]
    );
}
Run Code Online (Sandbox Code Playgroud)