При использовании тройного оператора прутика в, все идет, как и ожидалось, КРОМЕ |raw
фильтра не применяются, когда условие ложно:Twig тройные не прилагая фильтр, если ложные
{{ thing.description|length > 255 ? thing.description|striptags|slice(0,255) ~ '...' : thing.description|raw }}
Когда верно, то применяя |striptags|slice(0,255)
фильтров ,
|raw
фильтр действительно получить применяется, когда кодируется, как это (и ложь):
{% if thing.description|length > 255 %}
{{ thing.description|striptags|slice(0,255) ~ '...' }}
{% else %}
{{ thing.description|raw }}
{% endif %}
Для жизни меня я не могу понять, почему |raw
не применяется при использовании троичной синтаксиса.
Спасибо за отличное объяснение! – willanderson