如何在导航标签内的模态内渲染?

时间:2014-04-23 14:06:11

标签: jquery twitter-bootstrap symfony twig

我正在尝试使用模式渲染表单,该模式由我的nav-tabs中的链接设置为活动状态。但是当我将这一行放入模态时:

{{ render(controller('AcmeBundle:Acme:new')) }}

我再也无法打开导航标签了。模态正在导航选项卡中,并且渲染在模式中工作,没有导航标签。

以下是代码:

{% extends "::base.html.twig" %}

{% block body %}
    <ul class="nav nav-tabs">
        <li>
            <a href="#" data-toggle="dropdown" class="dropdown-toogle">a
                <b class="caret"></b>
            </a>
            <ul class="dropdown-menu">
                <li>
                    <a href="{{path('index')}}">aaaa</a>
                </li>
                <li>
                    <a data-toggle="modal" data-target="#myActivityModal">aa</a>
                </li>
            </ul>
        </li></ul>
     <div class="modal fade" id="myActivityModal" tabindex="-1" role="dialog" aria-labelledby="myActivityModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">x</button>
                    <h4 class="modal-title" id="myActivityModalLabel">aa</h4>
                </div>
                <div class="modal-body">
                    {{ render(controller('AcmeBundle:Acme:new')) }}
                </div>
                <div class="modal-footer">
                    <button type="button" data-dismiss="modal">Close</button>
                </div>
            </div>
        </div>
    </div>
{% endblock %}

感谢您的帮助,如果很明显,请抱歉:/

编辑:

newAction :
/**
 * Displays a form to create a new Acme entity.
 *
 * @Route("/new", name="new")
 * @Method("GET")
 * @Template()
 */
public function newAction()
{
    $entity = new Acme();
    $form   = $this->createCreateForm($entity);

    return array(
        'entity' => $entity,
        'form'   => $form->createView(),
    );
}

渲染导航但我无法打开他的任何标签。当我评论我的渲染时,一切正常。

1 个答案:

答案 0 :(得分:0)

您执行一个只返回值数组的控制器的渲染。你必须返回一个树枝视图来填充这个模态。

return $this->render('AcmeBundle:Acme:form.html.twig', array(
    'entity' => $entity,
    'form'   => $form->createView(),
);