我在Twig循环中有这段代码,它会为key => value
的每个第一个字母呈现漂亮的颜色<i class="avatar avatar-color-95 avatar-letter-c">{{ firstletter(message.firstname)}}</i>
但我希望这能以动态的方式显示颜色,不同的颜色取决于值的长度
{% for message in pagination %}
{% set namecount = message.firstname | length %}
{#{ dump(namecount)}#}//outputs number(length)
<div class="container avatar">
<i class="avatar avatar-color-12 avatar-letter-c">{{ firstletter(message.firstname)}}</i>
{% endfor %}
我想这样做
<i class="avatar avatar-color-{{ namecount }} avatar-letter-{{firstletter(message.firstname)}}">
你是怎么做到的?我试着把qoutes放在
之间"{{namecount}}"
和
"{{firstletter(message.firstname)}}
但它不起作用。我在Twig docs中找不到任何关于此的文档。你怎么做的?
答案 0 :(得分:1)
来自评论部分......
您可以使用<i class="avatar avatar-color-{{ message.firstname|length }} avatar-letter-{{ message.firstname|slice(0, 2) }}">
。
除非你打算再次使用变量,否则设置变量并没有太多意义,而不是内联调用过滤器/函数。