使用Twig进行代码优化

时间:2012-07-17 15:32:15

标签: symfony twig

我想优化我的源代码Twig,但这对我来说效率不高。

我的代码:

{% for info in infos %}
  {% set i = 0 %}
  {% if loop.index0 is divisibleby(3) %}

    <div class="row-fluid">
    <ul class="thumbnails">

    {% set open = 'yes' %} 

  {% endif %}

  <li class="span4">
    <div class="thumbnail">
      <img src="#" alt="">
      <div class="caption">
        <h4>{{ info.titre }}</h4>
        <p>{{ info.text }}</p>
        <p><a href="#" class="btn btn-primary">{# a traduire multi #}Lire</a></p>
      </div>
    </div>
  </li>

  {% if loop.index is divisibleby(3) and open == 'yes' %}
    </ul>

    </div>

  {% endif %}

{% endfor %} 

如何避免创建这么多变量,并使用相同的条件两次?

1 个答案:

答案 0 :(得分:2)

以下可能不起作用,但我希望你明白这个想法:

<div class="row-fluid">
    <ul class="thumbnails">
        {% for info in infos %}
            {% if loop.index0 is divisibleby(3) and loop.index0 != 0 %}
    </ul>
</div>
<div class="row-fluid">
    <ul class="thumbnails">
            {% endif %}

        <li class="span4">
            <div class="thumbnail">
                <img src="#" alt="" />
                <div class="caption">
                    <h4>{{ info.titre }}</h4>
                    <p>{{ info.text }}</p>
                    <p><a href="#" class="btn btn-primary">{# a traduire multi #}Lire</a></p>
                </div>
            </div>
       </li>
      {% endfor %}
    </ul>
</div>