我在弄清楚如何使用 Twig 模板解决以下问题时遇到问题
我有一个系统,其中两个部分想要在彼此不认识的情况下更改布局中的块。我的模板的想法是
main.twig
<html><body>
{% block a %}{% endblock %}
{% block b %}{% endblock %}
</body></html>
replacea.twig
{% extends "main.twig" %}
{% block a %}hello{% endblock %}
replaceb.twig
{% extends "main.twig" %}
{% block b %}world{% endblock %}
Run Code Online (Sandbox Code Playgroud)
我的问题是我不知道如何实现这一点,因为我调用replacea和replaceb的地方只共享一个“viewengine”,所以我能够收集所有渲染调用并批量处理它们。
我解决这个问题的第一个想法是扩展一个变量,比如“布局”,但是当我调用渲染布局时,所有模板中的布局将被替换为相同的内容,而不是替换为replaceb中的“replacea.twig”和“main.twig”在替换中。
希望你理解我的问题。
你需要使用“使用”——双关语不是故意的!:-)
main.twig
<html><body>
{% block a %}{% endblock %}
{% block b %}{% endblock %}
</body></html>
replacea.twig
{% block a %}hello{% endblock %}
replaceb.twig
{% extends "main.twig" %}
{% use "replacea.html" %}
{% block b %}world{% endblock %}
Run Code Online (Sandbox Code Playgroud)
查看文档: https: //twig.symfony.com/doc/tags/use.html
| 归档时间: |
|
| 查看次数: |
3816 次 |
| 最近记录: |