我正在用Django创建一个简单的网站,用户可以使用购物车。他们可以将商品添加到购物车中,然后再购买(将购买的商品添加到另一个模型中)。嗯,我是Django的新人,我有一个问题。在购买产品后,我删除购物车对象,并创建另一个对象购物车新的空。第一次我买的产品都很好,但是第二次我试着付款。我总是得到空的购物车对象,虽然如果我检查数据库,我可以看到那里有正确的产品。。。在
我要把我的django的模型留在这里:
from __future__ import unicode_literals
from django.db import models
from django.contrib.auth.models import User
class Cart(models.Model):
user = models.ForeignKey(User, null=True)
items = models.ManyToManyField(Item, null=True)
money = models.FloatField(default=0)
def __str__(self):
aux = ""
for item in self.items.all():
aux += "\n"+"["+item.name+"]" + str(item.price)+ " " + item.type + " " + str(item.description)+"\n"
aux += "\n\nTotal Price: "+str(self.money)
return aux
class Client(models.Model):
user = models.OneToOneField(User)
cart = models.OneToOneField(Cart, null=True, on_delete=models.SET_NULL)
money = models.FloatField(default=0)
def __str__(self):
return "["+str(self.user)+"]"+str(self.money)
还有我的支付、购买和添加功能:
^{pr2}$我不明白为什么我不从客户的购物车里取回任何商品。。。用户第一次向购物车中添加一些东西没问题,当我删除购物车对象并为用户创建一个新的购物车对象时,问题就来了——也许我的模型弄错了。。。如果有人能为我指出正确的方向,我将不胜感激
因为您实际上是在尝试从购物车中清除商品,而不是删除购物车对象并重新创建它。尝试清除购物车对象上项目的ManyToManyField:
相关问题 更多 >
编程相关推荐