Twig如何使用速记语法打印变量(如果存在)(不为空)

Twig通常使开发人员和设计人员更容易进行操作, 你可以使用非常简单易懂的语法在视图中打印从控制器发送的一些数据, 但是有时这种语法(当你是开发人员时)可能有点la脚如果你想要实现的目标非常简单。例如, 使用占位符有条件地打印简单值。假设有一个对象(即商品), 该商品对象的访问属性可以是整数(访问次数或null)。因此, 如果访问属性为null, 则当你编写普通的树枝语法以打印值0时, 代码将是:

{% if article.visits %}
    {{ article.visits }}
{% else %}
    0
{% endif %}

该代码可以正常工作, 并且可以打印原始访问次数, 或者如果该值为null, 则将打印0, 但是将文件的5行打印出来即可。使用三元运算符(简写语法), 你可以轻松地打印一个值(如果存在), 或者在变量为空的情况下使用占位符, 例如, 在我们的示例中, 代码将改为:

{{ not article.visits ? "0" : article.visits }}

与上面的示例表达相同的逻辑, 如果article.visits为null, 则打印0, 否则打印其原始值。我们也想邀请你阅读每个开发人员都应该知道的10条树枝提示, 因为你可能会找到有用的提示。

使用默认过滤器

如果以前的语法对你来说仍然很长, 那么你可以使用默认过滤器, 如果它不为空, 则返回过滤后的变量的值;如果它为空, 则将使用过滤器中提供的参数, 在这种情况下为0:

{{ article.visits|default("0")}}

编码愉快!

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?