在Django的父模型中更新auto_now DateTimeField时,需要确保子模型中的DateTimeField也会被更新。为了实现这一点,可以使用以下方法:
class ParentModel(models.Model):
updated_at = models.DateTimeField(auto_now=True)
def update_updated_at(self):
self.updated_at = timezone.now()
self.save(update_fields=['updated_at'])
class ChildModel(ParentModel):
# 其他字段定义
def save(self, *args, **kwargs):
super().save(*args, **kwargs)
self.parentmodel.update_updated_at()
这样,在保存子模型时,父模型中的auto_now DateTimeField也会被更新。
优势:
应用场景:
推荐的腾讯云相关产品:
产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云