[英]twig:concatenate two strings in a trinary inside HTML attribute
<a class="menu-item" href="{{(haveSubMenu == 'yes')?'#':(item.url|e ~ (item.hash ? item.hash|e : ''))}}"></a>
我想做的很简单,如果菜单项具有子菜单,则其href应该是#
,如果没有,则获取其URL。 但是上面的代码不起作用,因为当~
将其操作数转换为字符串时,它将item.url
所有&
s转换为&
,这会断开链接。
那么写这个的正确方法是什么?
尝试使用autoescape标签对所有代码禁用autoscape。
因此,使用以下代码:
{% autoescape false %}
Everything will be outputted as is in this block
<a class="menu-item" href="{{(haveSubMenu == 'yes')?'#':(item.url|e ~ (item.hash ? item.hash : ''))}}"></a>
{% endautoescape %}
请参阅此twigfiddle URL中的工作代码(以及带有示例的运行代码)。
如果这不符合您的预期,请随意提供一些测试数据。
希望有帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.