Flask每个表行4项

时间:2015-10-13 11:47:19

标签: python flask jinja2

我正在使用一组对象在FLASK中创建一个表。我希望每个表行显示4个对象,但batch(4)命令似乎无法正常工作。它运行,没有错误。但也没有显示任何东西。

 <table class="Fruits_n_Veggies">
        {% for item in fruit | batch(4)  %}
            {% if item.name %}
                <tr>
                    <td class = "img"> <img src="{{ url_for('static', filename=item.img_url) }}" height="100"; width="100"><br>
                    {{ item.name }} {{ item.price_min }} - {{ item.price_max }}</td>
                </tr>
            {% endif %}
        {% endfor %}
    </table>

我对此事有任何帮助表示感谢。

1 个答案:

答案 0 :(得分:1)

batch返回一个包含4个对象的容器。你也需要迭代它们。

{% for row in fruit | batch(4)  %}
    <tr>
        {% for item in row %}
            <td class = "img"> <img src="{{ url_for('static', filename=item.img_url) }}" height="100"; width="100"><br>
            {{ item.name }} {{ item.price_min }} - {{ item.price_max }}</td>
        {% endfor %}
    </tr>
{% endfor %}