You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Timber/Twig中单行编写多个if判断条件

你原先的写法不生效的核心原因是 not 'Booked' 没有绑定变量做判断,本质是直接对固定字符串取布尔值后取反,非空字符串在这类模板引擎中默认判定为真值,取反后恒为假,所以整个条件永远不会触发。

正确的单行多条件实现方案

直接在同一个if标签内用and拼接两个完整的判断表达式即可,和你两层嵌套的写法逻辑完全等价:

{% if room_status == 'For Rent' and room_status != 'Booked' %}
  {# <Then run some code here> #}
{% endif %}

额外简化建议

如果你的业务逻辑里For Rent和Booked是互斥的状态(即房间状态不可能同时为这两个值),那你完全可以只保留第一个判断条件,不需要额外加不等于Booked的校验,代码可以进一步简化:

{% if room_status == 'For Rent' %}
  {# <Then run some code here> #}
{% endif %}

内容的提问来源于stack exchange,提问作者ShrockCo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:09:04