【问题标题】:Getting the value of a variable in a twig template在树枝模板中获取变量的值
【发布时间】:2016-02-14 20:40:24
【问题描述】:

在比较了第一个数组后,我试图在树枝模板中填充一个数组。这是我的例子。

{% set tab = {} %}
{% for key, value in array  %}
   {% for k, v in array2  %}
          {% if value.name == v %}
              {% set tab = tab | merge({ k : v}) %}
          {% endif %}
    {% endfor %}
{% endfor %}

在这部分代码{% set tab = tab | merge({ k : v}) %} 中,我试图获取第二个数组的键值,以用正确的键和值填充新数组。问题在于我将k 设置为新数组的键。我得到一个字符串而不是键值。我想知道如何获取值而不是字符串变量。

谢谢。

【问题讨论】:

  • Twig 的设计初衷不是为了转移大量数据!虽然这可能有效,但如果可能的话,我建议在控制器或存储库中进行此计算
  • 很清楚!谢谢老兄
  • 如果与视图相关,可以在树枝扩展中完成。

标签: symfony twig


【解决方案1】:

我认为您正在寻找 attribute 函数:http://twig.sensiolabs.org/doc/functions/attribute.html

但是正如 cmets 中提到的,最好将此逻辑封装到 Repository 或服务中,该服务将存储库查询的结果作为参数并返回一个干净的数组,该数组易于“显示”,无需进一步复杂处理.

这样,结果也可以在 CLI 命令中重复使用,例如,因为数据不再绑定到 twig 视图。

【讨论】:

    猜你喜欢
    • 2023-01-18
    • 1970-01-01
    • 1970-01-01
    • 2013-05-11
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-15
    相关资源
    最近更新 更多