擅长:python、mysql、java
<p>行<s><code>cart_id = cart_id</code></s>没有意义,您应该使用<code>cart.id</code>,或者更安全的<code>cart.pk</code>:</p>
<pre><code>def cart_view(request):
try:
cart_id = request.session['cart_id']
cart = Cart.objects.get(id=cart_id)
except (KeyError, Cart.DoesNotExist):
cart = Cart.objects.create()
request.session['cart_id'] = cart_id = <b>cart.pk</b>
request.session['total'] = 0
else:
request.session['total'] = cart.items.count()
categories = Category.objects.all()
return render(request, 'cart.html', locals())</code></pre>
<p>但是请不要使用。从软件设计的角度来看,这不是一个好的实践。这意味着您知道传递给模板的内容。如果您要以酸的方式创建一个与上下文处理器中的变量同名的变量,那么您可能会得到不想要的行为。在</p>