gpt4 book ai didi

symfony - 使用包含的 Twig 自定义集变量

转载 作者:行者123 更新时间:2023-12-04 02:21:10 25 4
gpt4 key购买 nike

我试图包含一个带有一堆自定义设置变量的 Twig 文件,然后在多个其他模板文件中使用这些变量。类似于包含 PHP 文件的工作方式。

我似乎无法访问索引文件中包含的变量设置。

有没有办法做到这一点?

示例代码 *已编辑

包含文件:

{# variables.html #}
{% set width = "100" %}
{% set height = "250" %}

模板文件:
{# index.html #} 
{% include 'variables.html' %}
{{ width }}
{{ height }}

预期结果:
100 250

实际结果:
// Nothing gets output

最佳答案

我只是想和你做同样的事情,并想出了以下几点:

已创建 snippets.twig维护所有这些小变量。在你的情况下,你可以称之为 variables.twig .在这个文件中,我使用了 macro没有任何争论。我正在创建格式化的条目日期标记,我可以在所有模板中使用它,它看起来像这样:

{% macro entry_date() %}
<time datetime="{{post.post_date|date('m-d-Y')}}">{{post.post_date|date('F j, Y')}}</time>
{% endmacro %}

请注意,名称声明后的括号是必需的

在我的主布局文件中, layout.twig , 我通过 import 引用了这个宏声明,以便它可以在所有子模板中访问:
{% import "snippets.twig" as snippets %}
<!doctype html>
...

在我的模板文件中,我现在有 snippets可以访问并且可以像任何其他变量一样查询它:
{{ snippets.entry_date }}

更新

这似乎无法正确运行代码。如果你只是存储静态内容,你应该很好。你也可以将 args 传递给宏,所以我想你可以在那里创造一些魔法,但我还没有尝试过。

关于symfony - 使用包含的 Twig 自定义集变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20410194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com