有没有一种方法可以指定一个"延伸";在Twig中排除其包含的一个分部?
为了更好地解释我自己,这是我的base.html wig
<body>
{% include '/main/_navbar.html.twig' %}
{% block body %}
{% for flashError in app.flashes('success') %}
<div class="alert alert-success" role="alert">{{ message }}</div>
{% endfor %}
{% endblock %}
{% include '/main/_footer.html.twig' %}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="{{ asset('script/app.js') }}"></script>
</body>
在我的登录页面上,我不需要我的_navbar.html.twig
部分。有没有办法不包括(排除)它知道我的视图extends
来自这个base
模板?有没有";选项";我可以从extends
后面过去吗?
这是我用来在登录页面上extend
我的基本模板的代码:
{% extends 'base.html.twig' %}
只需将不想包含的include包装在一个单独的块中,然后用空内容覆盖该块,例如
base.html.trick
<body>
{% block nav %}
{% include '/main/_navbar.html.twig' %}
{% endblock %}
{% block body %}
{% for flashError in app.flashes('success') %}
<div class="alert alert-success" role="alert">{{ message }}</div>
{% endfor %}
{% endblock %}
{% include '/main/_footer.html.twig' %}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="{{ asset('script/app.js') }}"></script>
</body>
login.html.trick
{% extends "base.html.twig" %}
{% block nav %}{% endblock %}
演示