Twig 另一个控制器的div中的细枝渲染控制器

Twig 另一个控制器的div中的细枝渲染控制器,twig,symfony,Twig,Symfony,我对以下用例有一个问题:我在一个小树枝模板中渲染一个控制器,其中有一个导航div,其中有两个链接。在我的页面中间,我有一个div,我想渲染另一个控制器的结果。细枝应该渲染哪个控制器取决于单击菜单链接。我希望下面的代码清楚地说明我的意思: {% extends 'base.html.twig' %} {% block scripts %} {{ parent() }} <script type="text/javascript"> $(function() {

我对以下用例有一个问题:我在一个小树枝模板中渲染一个控制器,其中有一个导航div,其中有两个链接。在我的页面中间,我有一个div,我想渲染另一个控制器的结果。细枝应该渲染哪个控制器取决于单击菜单链接。我希望下面的代码清楚地说明我的意思:

{% extends 'base.html.twig' %}
{% block scripts %}
    {{ parent() }}
    <script type="text/javascript">
    $(function() {
        $( "#menu" ).menu();
      });
    </script>
    <style>
        .ui-menu {margin-bottom: 10px !important;}
    </style>
{% endblock %}
{% block stylesheets %}
    {{ parent() }}
    <link href="{{ asset('css/sstm_style.css') }}" rel="stylesheet" />
{% endblock %}

{% block body %}
{{ parent() }}
<div id="module_title"><h1>Lizenznehmer-Stammdaten</h1></div>
<nav>
    <h5>Was möchten Sie tun?</h5>
    <ul id="menu">
        <li><a href="#">Lizenznehmer anlegen</a></li>
        <li><a href="#">Lizenznehmer bearbeiten</a></li>
    </ul>
</nav>
<div id="main">
{# fill div with either CreateLicenseController or ChangeLicenseController #}
</div>
{% endblock %}
{%extends'base.html.twig%}
{%block scripts%}
{{parent()}}
$(函数(){
$(“#菜单”).menu();
});
.ui菜单{页边距底部:10px!重要;}
{%endblock%}
{%块样式表%}
{{parent()}}
{%endblock%}
{%block body%}
{{parent()}}
利兹内默斯塔姆达顿酒店
莫赫滕是你的朋友吗?
{#用CreateLicenseController或ChangeLicenseController填充div} {%endblock%}

我知道embed标记可以在另一个controllers twig的块中呈现控制器,但我不知道如何在运行时告诉twig应该呈现哪个控制器

您的意思是通过ajax请求生成控制器?或者您知道渲染时需要哪个控制器? 如果是最后一个,则可以使用
If

{% if needCreate %}
{{ render(controller('YourBundle:YourController:CreateLicenseController') }}
{% else %}
{{ render(controller('YourBundle:YourController:ChangeController') }}
{% endif %}

如果您想通过ajax加载它,那么应该使用javascript,而不是twig。

好的,我似乎无法绕过ajax请求。谢谢你提供的信息。