Twig 在 set 语句中打印值和字符串

问题描述 投票:0回答:1

这个树枝模板不是干的。

{% set reviewer_0 = webform_token('[webform_submission:values:reviewer:0:entity:mail:clear]', webform_submission, [], options) %}
{% set reviewer_1 = webform_token('[webform_submission:values:reviewer:1:entity:mail:clear]', webform_submission, [], options) %}
{% set reviewer_2 = webform_token('[webform_submission:values:reviewer:2:entity:mail:clear]', webform_submission, [], options) %}
{% if reviewer_0|length %}{{ reviewer_0 }}{% else %}{% endif %}
{% if reviewer_1|length %},{{ reviewer_1 }}{% else %}{% endif %}
{% if reviewer_2|length %},{{ reviewer_2 }}{% else %}{% endif %}

我尝试使用 twig 文档中的示例

{% for i in 0..10 %}
    * {{ i }}
{% endfor %}

像这样:

{% for i in 0..10 %}
    {% set reviewer_{{ i }} = webform_token('[webform_submission:values:reviewer:'{{ i }}':entity:mail:clear]', webform_submission, [], options) %}
    {% if reviewer_{{ i }}|length %}{{ reviewer_{{ i }} }}{% else %}{% endif %}
{% endfor %}

但这不起作用。我认为字符串必须以某种方式连接起来。如何在树枝中创建这个循环?

drupal twig drupal-webform
1个回答
0
投票

{% %}
内,你也不能使用
{{ }}

首先,你需要更新

webform_token('[webform_submission:values:reviewer:'{{ i }}':entity:mail:clear]', webform_submission, [], options)

into

webform_token('[webform_submission:values:reviewer:' ~ i ~ ':entity:mail:clear]', webform_submission, [], options)

并且变量名称似乎也不正确,您可以删除

_{{ i }}
部分。无论如何,每一回合它都会被覆盖。

问候,

© www.soinside.com 2019 - 2024. All rights reserved.