更新bulk_update中的auto_now字段

JBa*_*cía 5 django django-models bulkupdate

我正在使用 Django 2.2 并且我有一个模型auto_now modification_datetime字段的模型,我需要在bulk_update执行期间/之后仅针对真正更新的受影响的注册表进行更新。

是否可以auto_now通过执行仅更新受影响记录上的日期时间模型字段bulk_update

ikl*_*nac 4

否,因为bulk_update()不会调用save()方法,也不会在实例上触发pre_savepost_save发出信号(通常只生成单个更新查询)。另外,通常不记得 Django 中实际更新的实例

\n

此外,如记录的那样auto_now,不会在 update()/bulk_update() 上触发,因为它是由save()

\n
\n

该字段仅在调用 Model.save() 时自动更新。当以其他方式(例如 QuerySet.update())更新其他字段时,该字段不会更新,尽管您可以在更新中为该字段指定自定义值。

\n
\n

您可以检查哪些实例已手动更新并更新其时间戳或执行某种数据库触发器

\n