Skip to main content
 首页 » 编程设计

python之特殊事件的 django 模型字段更新

2025年05月04日30jackei

如果我在 DateTimeField 上定义 auto_now = True,则此字段将在每次 save() 时更新。但是,当发生特殊情况时如何更新这个字段呢?

例如:仅当同一模型的某些其他字段已更改其状态时才更新 DateTimeField。当然,我可以在数据库级别定义触发器,或者捕获 pre_save 或 post_save 信号来制作东西。但是有没有办法换一种方式呢?

请您参考如下方法:

您可以安装 django-models-utils 并使用它的 MonitorField .它是一个 DateTimeField 子类,用于监视模型上的另一个字段,并在监视的字段发生变化时将自身更新为当前日期时间。