0

我有很多时间在 PHP 中编程,但我在 Symfony 中做了我的第一步。我尝试编写 Twigg 模板,我在 app/Resources/view/public.html.twig 中有一个公共模板。该文件包含: http: //pastebin.com/T1KGMfXL。现在,在 CloudBundle 中,有一个 base.html.twig:

{% extends '::public.html.twig' %}

{% block main %}
<div class="login_page">
    <div class="login_box">
        {% block content %} {% endblock %}
    </div>
</div>
{% endblock %}

以及另一个树枝文件中的内容。例如 login.html.twig {% extends 'base.html.twig' %}

{% block content %}
....
{% endblock %}

在控制器中,当用户尝试http://cloud.man.local/app.php/login 时

public function staticAction($sitio)
    {
        // in this case, $sitio contains "login"
        return $this->render("CloudBundle:Default:$sitio.html.twig");
    }

所以,问题是,只显示页脚,不显示内容。有任何想法吗 ?。

4

1 回答 1

0

你想覆盖另一个块内的块,所以在你的情况下,我认为你应该在另一个树枝文件中尝试这个:

{% block main %}
    {{ parent() }}
    {% block content %} YOur content {% endblock %}
{% endblock %}

http://twig.sensiolabs.org/doc/functions/parent.html

希望它有帮助。

最良好的问候。

于 2013-07-03T22:02:05.020 回答