for if循环使用if条件

时间:2015-10-08 11:30:04

标签: php html twig

我有不同类别的值,我想只显示一次类别名称。我试过这种方式,但它多次显示我的类别名称: -

$("#button1").click(function () {
    $("#ad1").show();
    $("#ad2 #ad3 #ad4 #ad5").hide();
});

$("#button2").click(function () {
    $("#ad2").show();
    $("#ad1 #ad3 #ad4 #ad5").hide();
});

结果: -

<th>Properties</th>
<td>
    {% for sec in entity.appliedFeatures %}
        {{ sec.featuresCategory }} :-
        {{ sec.name }}
    % endfor %}
</td>

这些类别: - 风格,户外功能,特殊房间

我想只展示一次这些类别。我用loop.index尝试了if条件,但后来只显示了一个类别名称。

我想要这样的结果结果: -

Properties  Style :- japanese || Style :- russian || Style :- american || Outdoor Features :- music system in park || Outdoor Features :- Basketball Court || Special Rooms :- Camere Special ||

任何解决方案?

1 个答案:

答案 0 :(得分:1)

也许这样的事情会起作用吗?

{% set previous = false %}
{% for sec in entity.appliedFeatures %}
    {% if not previous or previous.featuresCategory != sec.featuresCategory %}
        {{ sec.featuresCategory }} :-
    {% endif %}
    {{ sec.name }}
    {% set previous = sec %}
{% endfor %}

在Twig中没有内置方法来获取前一个循环项,因此,在将数据结构传递给Twig渲染模板之前,这可能是您无需更改数据结构的最佳方法。

可能需要进行一些调整才能使其看起来完全符合您的要求。