5

我试图在 jinja 模板引擎上解压多个变量。我怎样才能做到这一点?

我正在尝试实现这样的目标;

{% for item1, item2, item3 in items %}
<div class="row">
  <div class="four columns">
    <img src="static{{ item1.pics.0 }}" class="picitem" alt=""/>
  </div>

  <div class="four columns">
    <img src="static{{ item2.pics.0 }}" class="picitem" alt="" />
  </div>

  <div class="four columns">
    <img src="static{{ item3.pics.0 }}" class="picitem" alt=""/>      
  </div>
</div>
{% endfor %}

这显然不是通过给予来工作的;

ValueError: too many values to unpack

任何想法,将不胜感激。

4

2 回答 2

7

使用batch过滤器迭代块:

{% for tmp in items|batch(3) %}
  <div class="row">
    {% for item in tmp %}
      <div class="four columns">
        <img src="static{{ item.pics.0 }}" class="picitem" alt=""/>
      </div>
    {% endfor %}
  </div>
{% endfor %}
于 2013-07-08T07:00:48.677 回答
0

您必须重建您的“项目”才能进行拆包工作。

例如:

item1 = [1,2,3]
item2 = [a,b,c]
item3 = [11,22,33]

items = zip(item1, item2, item3)

将此发送到模板。希望能帮助到你。

于 2013-07-08T07:04:40.083 回答