是否有用于输出条件文本的 Twig 速记语法

2022-08-30 08:29:34

Twig中是否有更短的语法来输出条件文本字符串?

<h1>{% if not info.id %}create{% else %}edit{% endif %}</h1>

传统的php甚至比这更容易:

<h1><?php info['id']? 'create' : 'edit' ?></h1>

答案 1

这应该有效:

{{ not info.id ? 'create' : 'edit' }}

此外,这称为三元运算符。它有点隐藏在文档:twig文档:运算符

从他们的文档中,基本结构是:

{{ foo ? 'yes' : 'no' }}

答案 2

如果你需要比较值等于你可以做的事情:

{{  user.role == 'admin' ? 'is-admin' : 'not-admin' }}

您可以使用树枝内的猫王操作员:

{{  user ? 'is-user' }} 

{{  user ?: 'not-user' }} // note that it evaluates to the left operand if true ( returns the user ) and right if not

推荐