我有一个简单的Python for循环,该循环遍历对象字段(4 product.price)并乘以一个常数值
它将在控制台中打印正确的计算出的4个值,但是在django模板中呈现时,所有4个结果都具有相同的值(上次迭代的计算值)
但是使用Return而不是Print会带来以下错误 'float'对象没有属性'get'
查看
else
return (tree->left, x)
return (tree->right, x)
模板
def reprice(request):
list = Product.objects.all()
......
for item in list:
rp = item.price * value_USD
print (rp)
return render(request , 'multi/reprice.html', {'list' : list, 'rp' : rp })
答案 0 :(得分:0)
在调用render()时变量包含的所有值将是到达Django的值。
只需根据需要传递数据即可在呈现数据时将其显示出来。无需传递rp
,只需传递所需的值列表即可。
list = Product.objects.all()
return render(request, "multi/reprice.html", {"list": [item.price * value_USD for item in list]})
然后在Django中
{% for item in list %}
{{ item }}
{% endfor %}