【发布时间】:2016-04-20 12:43:27
【问题描述】:
我不确定为什么我的代码没有执行。我知道它应该以这种方式工作,但现在发生的只是它不执行 else 部分。
在调试中,我知道 descriptions 不为 null,并且 descriptions 会显示给那些拥有它的人。
{% if descriptions is not null %}
{{ dump(descriptions) }}
{% for description in descriptions %}
<td>{{ description.productDesciption }}</td>
{% endfor %}
{% else %}
<td>
<a href = "{{ path('description') }}">Create a Description for this Product</a>
</td>
{% endif %}
【问题讨论】:
-
只是出于好奇,如果你使用这个 if 语句,你会得到任何不同的结果吗?
{% if descriptions %} -
我想通了。我正在测试一个数组是否为空,所以我必须测试数组的长度/计数。
-
啊,我明白了。很高兴你把它整理出来。 docs page 上有一个方便的值列表,用于说明哪些值也评估为真/假(它位于页面的最底部附近)。从技术上讲,一个空数组将在 if 语句中计算为
false,这有点方便。 -
您还可以测试某些内容是否“非空”。这将检查变量是否为空、不是空字符串和空数组。