首页 > 解决方案 > 当我要从购物车中删除产品时,我没有得到任何回应?

问题描述

这是我的观点。

 def remove_from_cart(request,id):
      try:
          the_id = request.session['cart_id']
          cart = Cart.objects.get(id=the_id)
          print(cart)
    except:
          return HttpResponseRedirect(reverse('cart'))
          cartitem=CartItem.objects.get(id=id)
          cartitem.delete()
      cartitem.cart=None
      cartitem.save()

这是我的网址映射

url('^cart/(?P<id>\d+)/$',views.remove_from_cart,name='remove_from_cart'),

<a href="{% url 'remove_from_cart' item.id %}">Remove</a>

我在我的终端上得到这个

“GET /cart/3/HTTP/1.1”302 0

标签: djangopython-3.x

解决方案


你必须从return一个。 HttpResponseview

from  django.http.response import HttpResponse

def remove_from_cart(request,id):
      try:
          the_id = request.session['cart_id']
          cart = Cart.objects.get(id=the_id)
          print(cart)
    except:
          return HttpResponseRedirect(reverse('cart'))
          cartitem=CartItem.objects.get(id=id)
          cartitem.delete()
      cartitem.cart=None
      cartitem.save()

    # Always return a response
    return HttpResponse('saved')

推荐阅读