【发布时间】:2020-08-29 18:28:32
【问题描述】:
如何获得用户在商店中添加的书籍的总价格。我还添加了@property 来计算并保存总价。当我尝试保存表单时,我收到 typeError Exception Value: Field 'total_price' expected a number but got {'price__sum': 222}.
我该如何解决这个问题?
商店
class Book(models.Model):
name = models.CharField(max_length=100)
price = models.IntegerField(default=0)
def __str__(self):
return self.name
class Store(models.Model):
keeper = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
books = models.ManyToManyField(Book)
total_price = models.IntegerField(default=0)
@property
def save(self):
self.total_price = self.books.all().aggregate(Sum('price'))
super(Store, self).save()
【问题讨论】:
标签: django django-models django-views