【发布时间】:2020-01-28 20:31:11
【问题描述】:
我在Model 中添加了一个save() 方法来更新一些时间戳:
class Order(models.Model):
deliveredtime = models.DateTimeField(blank=True, null=True, default=None)
status = models.CharField(default='NEW', max_length=20)
def save(self, *args, **kw):
if self.status == "DELIVERED" and self.deliveredtime is None:
self.deliveredtime = timezone.now()
super(Order, self).save(*args, **kw)
但我发现在对象列表上调用update 时没有调用此方法:
Order.objects.filter(status='WAITING FOR DELIVERY').update(status='DELIVERED')
如何在 Order 类的任何对象发生任何更改时触发此更新?
【问题讨论】:
标签: django django-models