如何将更多数据附加到Twig中的同一变量?例如,这就是我想在Twig中做的事情:
var data = "foo";
data += 'bar';
我已经发现~
在Twig中将字符串附加在一起。当我尝试{% set data ~ 'foo' %}
时,我在Twig中收到错误。
答案 0 :(得分:22)
~
运算符不执行赋值,这可能是导致错误的原因。
相反,您需要将附加的字符串分配回变量:
{% set data = data ~ 'foo' %}
答案 1 :(得分:0)
以树枝动态显示
{% for Resp in test.TestRespuestasA %}
{% set name = "preg_A_" ~ Resp.id %}
{% set name_aux = "preg_A_comentario" ~ Resp.id %}
<li>{{ form_row(attribute(form, name)) }}</li>
{% endfor %}
答案 2 :(得分:0)
您还可以在Twig实例中定义类似Liquid的|append
过滤器的自定义过滤器,它可以执行相同的操作。
$loader = new Twig_Loader_Filesystem('./path/to/views/dir');
$twig = new Twig_Environment($loader);
...
...
$twig->addFilter(new Twig_SimpleFilter('append', function($val, $append) {
return $val . $append;
}));
导致以下标记:
{% set pants = 'I\'m wearing stretchy pants!' %}
{% set part2 = ' and they\'re friggin\' comfy!' %}
{% set pants = pants|append(part2) %}
{{ pants }}
{# result: I'm wearing stretchy pants! and they're friggin' comfy! #}
恕我直言,我发现上面的示例比~
组合器更直观,特别是在共享代码库上工作时,语法新手可能会有些混淆。