Tag: django django signals

Django post_save()信号的实现

我有一个关于Django的问题。 我在这里有ManyToMany模型 class Product(models.Model): name = models.CharField(max_length=255) price = models.DecimalField(default=0.0, max_digits=9, decimal_places=2) stock = models.IntegerField(default=0) def __unicode__(self): return self.name class Cart(models.Model): customer = models.ForeignKey(Customer) products = models.ManyToManyField(Product, through='TransactionDetail') t_date = models.DateField(default=datetime.now()) t_sum = models.FloatField(default=0.0) def __unicode__(self): return str(self.id) class TransactionDetail(models.Model): product = models.ForeignKey(Product) cart = models.ForeignKey(Cart) amount = models.IntegerField(default=0) 对于创build的1个购物车对象,我可以插入尽可能多的新的TransactionDetail对象(产品和数量)。 我的问题是。 我怎样才能实现触发器? 我想要的是无论何时创build一个交易细节,我都希望产品的库存量减去transactiondetail中的金额。 我读过关于post_save(),但我不知道如何实现它。 也许这样的事情 […]

Django信号与重载保存方法

我有困难缠着这个。 现在我有一些看起来像这样的模型: def Review(models.Model) …fields… overall_score = models.FloatField(blank=True) def Score(models.Model) review = models.ForeignKey(Review) question = models.TextField() grade = models.IntegerField() 评论有几个“分数”,overall_score是分数的平均值。 保存评论或评分时,我需要重新计算overall_score平均值。 现在我正在使用重写的保存方法。 使用Django的信号分配器会有什么好处吗?