如何从Django的愿望列表中删除产品?

2024-09-28 01:29:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Django数据库中有wishlist表,并且customer与wishlist表相关,这意味着如果客户登录,那么他/她可以在wishlist中添加产品,但我正在尝试从客户wishlist中删除产品,但它正在重定向回,请告诉我如何从客户wishlist中删除产品

这是我的models.py文件

class Wishlist(models.Model):
    product = models.ForeignKey(Product, on_delete=models.CASCADE, default=None)
    customer = models.ForeignKey(Customer, on_delete=models.SET_NULL, blank=True, null=True)
    quantity = models.IntegerField(default=0, null=True, blank=True)
    
def __str__(self):
    return str(self.id)

这是我的views.py文件

def deletewishlist(request, id):
    customer=request.user.customer
    Wishlist.objects.filter(customer_id=customer.id, id=id).delete()
    messages.success(request, 'Product Remove From Wishlist...')
    return HttpResponseRedirect('/wishlist')

这是我的urls.py文件

path('wishlist_item/deleteproduct/<int:id>', views.deletewishlist, name="deletewishlist"),

这是我的delete按钮代码,当单击时,它会从愿望列表中删除产品

<a class="primary-btn" href="/wishlist_item/deleteproduct/{{item.product.id}}" onclick="return confirm('Are you sure')">Delete</a>

Tags: 文件pyidtrue客户return产品models
1条回答
网友
1楼 · 发布于 2024-09-28 01:29:29

您正在查询Wishlistid,而不是productid

使用:

def deletewishlist(request, id):
    customer=request.user.customer
    Wishlist.objects.filter(customer_id=customer.id, product=Product.objects.get(id=id)).delete()
    messages.success(request, 'Product Remove From Wishlist...')
    return HttpResponseRedirect('/wishlist')

相关问题 更多 >

    热门问题