繁体   English   中英

树枝变量内部对象方法

[英]twig variable inside object method

嗨,我也是Symfony和Twig的新手。 我试图将字符串变量作为方法的名称传递。 让我们看一个例子:

{% for user in pagination %}
    <tr {% if loop.index is odd %}class="color"{% endif %}>
        {% for value in columns  %}
            <td>{{ user.value }}</td>
        {% endfor %}
    </tr>
{% endfor %}

此代码导致错误,未定义对象的方法值
可变列包含一个列数组(id,name,email ...)
请有人告诉我正确的语法。
就像是:

<td>{{article[value]}}</td>
<td>{{article.{{value}}}}</td>

非常感谢!

当您在Twig变量上引用对象属性时,Twig引擎会尝试通过多种方式访问​​PHP对象上的该属性。

假设您的user对象是Your\\Bundle\\Entity\\User类的实例。 TWIG将尝试通过尝试访问以下内容来尝试解析user.value (我认为按此顺序)

  • Your\\Bundle\\Entity\\User::value()
  • Your\\Bundle\\Entity\\User::getValue()
  • Your\\Bundle\\Entity\\User::$value

在所有情况下,这些方法/属性必须是public ,以便Twig访问它们。

简而言之,我认为这不是模板中的问题,而是底层对象的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM