Udd*_*ers 17 python django-templates
我有一个产品列表,连续放3个产品并清除行并添加另外3个,这个工作正常,但IE6,我知道<div>每组3个产品的添加将解决这个目前的模板文件
{% for product in category.products.all %}
<div class="{% cycle 'clear' '' '' %}">
<a href="{% url shop.views.product category.slug product.slug %}"><img src="{{MEDIA_URL}}{{product.mini_thumbnail}}" alt="{{product.name}}" class="thumbnail"/></a>
<div class="prod-details">
<h3><a href="{% url shop.views.product category.slug product.slug %}">{{product.get_product_name}}</a></h3>
<h4 class="strap">{{product.get_product_detail}}</h4>
<p>{{ product.strap }}</p>
<ul>
<li class="price">£{{product.price}}</li>
<li class="quantity">
<select name="quantity_{{product.id}}">
<option label="1" value="1">1</option>
<option label="2" value="2">2</option>
<option label="3" value="3">3</option>
<option label="4" value="4">4</option>
<option label="5" value="5">5</option>
<option label="6" value="6">6</option>
<option label="7" value="7">7</option>
<option label="8" value="8">8</option>
<option label="9" value="9">9</option>
</select>
</li>
<li><a href="{% url shop.views.product category.slug product.slug %}">Details ></a></li>
<li class="right"><input type="submit" name="add_to_basket_{{product.id}}" value="Add to Basket >"/></li>
</ul>
</div>
</div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
Dan*_*man 38
codeape的解决方案只有在您使用最新的Django trunk的SVN签出时才有效.如果您使用的是1.1或更低版本,则不支持该语法.
相反,您可以使用divisibleby过滤器:
{% if forloop.counter|divisibleby:3 %}<div>{% endif %}
Run Code Online (Sandbox Code Playgroud)
forloop.counter在循环中使用和模运算符:
{% for ... %}
{% if forloop.counter|divisibleby:3 %}<div>{% endif %}
...
{% if forloop.counter|divisibleby:3 %}</div>{% endif %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
请参阅http://docs.djangoproject.com/en/dev/ref/templates/builtins/#for
编辑:
修复了代码示例.
| 归档时间: |
|
| 查看次数: |
9972 次 |
| 最近记录: |