为什么Django模型中update时auto_now字段不更新?如何解决?

2026-05-26 23:250阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计522个文字,预计阅读时间需要3分钟。

为什么Django模型中update时auto_now字段不更新?如何解决?

`gmt_create` 自动添加 `auto_now_add`;`gmt_modify` 自动更新 `auto_now`;类 `CommonInfo` 继承自 `models.Model`:提供共有信息,不会创建实际的 table;类 `Meta`:

gmt_create自动添加auto_now_add;gmt_modify自动更新auto_now

class CommonInfo(models.Model): """基类,提供共同信息,不会创建真实的table""" class Meta: # 声明自己为抽象基类 abstract = True # 下面表示先根据更新时间gmt_modify降序排序,如果更新时间相同,再根据创建时间gmt_create降序排序 ordering = ['-gmt_modify', '-gmt_create'] gmt_create = models.DateTimeField('创建时间,自动创建', auto_now_add=True, null=True, help_text='创建时间') # 使用save可以达到自动更新的效果,使用update不会自动更新,因此需要携带上这个字段 gmt_modify = models.DateTimeField('更新时间,自动更新', auto_now=True, null=True, help_text='更新时间')

django的orm关于更新数据库的方法有update和save两种方法。

阅读全文

本文共计522个文字,预计阅读时间需要3分钟。

为什么Django模型中update时auto_now字段不更新?如何解决?

`gmt_create` 自动添加 `auto_now_add`;`gmt_modify` 自动更新 `auto_now`;类 `CommonInfo` 继承自 `models.Model`:提供共有信息,不会创建实际的 table;类 `Meta`:

gmt_create自动添加auto_now_add;gmt_modify自动更新auto_now

class CommonInfo(models.Model): """基类,提供共同信息,不会创建真实的table""" class Meta: # 声明自己为抽象基类 abstract = True # 下面表示先根据更新时间gmt_modify降序排序,如果更新时间相同,再根据创建时间gmt_create降序排序 ordering = ['-gmt_modify', '-gmt_create'] gmt_create = models.DateTimeField('创建时间,自动创建', auto_now_add=True, null=True, help_text='创建时间') # 使用save可以达到自动更新的效果,使用update不会自动更新,因此需要携带上这个字段 gmt_modify = models.DateTimeField('更新时间,自动更新', auto_now=True, null=True, help_text='更新时间')

django的orm关于更新数据库的方法有update和save两种方法。

阅读全文