我试图循环产品的数量:
{% for the_number in one_product.product_stock_range %}
{% if the_number == one_product.quantity %}
<option value="{{ the_number }}" selected="selected">{{ the_number }}</option>
{% else %}
<option value="{{ the_number }}">{{ the_number }}</option>
{% endif %}
{% endfor %}
现在我正在使用
'product_stock_range' : range(1, product_stock),
但有时,某些产品的库存仅为1.循环不会运行,如何解决此问题?即使它只是一次性循环,我如何强制循环运行?
答案 0 :(得分:1)
您需要将range(1, product_stock)
更改为range(0, product_stock)
或range(product_stock)
(默认为零),因为对于大多数编程语言(包括Python),索引从0开始。
答案 1 :(得分:0)
您可以使用条件:
range(1, product_stock if product_stock > 1 else 2)
这一点,在product_stock
为1
的情况下,产生range(1, 2)
会导致单次迭代(这就是您所说的)。