首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Twig中跨模板层次结构的嵌套块‎

Twig中跨模板层次结构的嵌套块‎
EN

Stack Overflow用户
提问于 2014-01-30 15:30:52
回答 1查看 3.3K关注 0票数 1

我有一个视图view.twig,它扩展了template_child.twig,而后者又扩展了template_base.twig

我希望能够将每个块嵌套在另一个块中,而无需创建一个"sub_content“块,该块只在扩展template_child时才能工作。因此,view.twig可以扩展任何一个模板,而不需要重命名块指令。

view.tig

代码语言:javascript
复制
{% extends "template_child.twig" %}
{% block content %}
    Stuff that should go in "content"
{% endblock content %}

template_child.tig

代码语言:javascript
复制
{% extends "template_base.twig" %}
{% block content %}
    <div id="styling-of-content">
        {% block content %}
        {% endblock content %}
    </div>
    Stuff that absolutely needs to be after "content"
{% endblock content %}

template_base.tig

代码语言:javascript
复制
<html><body>
    {% block content %}
    {% endblock content %}
</body></html>

当前,Twig在试图运行以下代码时输出此错误:

块'content‘已经在Y行的"template_child.twig“中定义了X行

使用Twig v1.12.3

EN

Stack Overflow用户

回答已采纳

发布于 2014-01-30 18:18:53

这是不可能的,因为Twig在纯PHP类和方法中编译模板。在PHP中,子方法始终具有覆盖父方法的能力。

解决方案是使用在sub_content中定义的view.twig块,该块包含在"template_child.twig“中的内容块中。

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21460647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档