gpt4 book ai didi

Django:模拟上次修改日期和修改次数

转载 作者:行者123 更新时间:2023-12-04 03:44:31 25 4
gpt4 key购买 nike

我有一个名为 Blog 的 Django 模型.

我想在我当前的模型中添加一个用于 last_modified_date 的字段。我知道如何设置默认值,但我希望它在我通过管理界面修改博客条目时以某种方式自动更新。

是否有某种方法可以将此值强制设置为每个管理站点保存的当前时间?

还有什么方法可以添加 mod_count字段并在每次修改管理站点博客条目时自动计算它?

最佳答案

创建一个 DateTimeField在你的模型中。每次保存时都会更新。这需要您使用 auto_now_add选项:

class DateTimeField([auto_now=False, auto_now_add=False, **options])

DateTimeField.auto_now_add¶

Automatically set the field to now every time the object is saved. Useful for "last-modified" timestamps. Note that the current date is always used; it's not just a default value that you can override.



它应该是这样的:
class Message(models.Model):
message = models.TextField()
active = models.BooleanField(default=True)
created_at = models.DateTimeField(auto_now_add=True)

Model field reference

对于第二部分,我认为你必须重载
ModelAdmin.save_model(self, request, obj, form, change)

正如 James Bennett 所描述的那样 here .它看起来像这样:
class EntryAdmin(admin.ModelAdmin):

def save_model(self, request, obj, form, change):
if change:
obj.change_count += 1
obj.save()

关于Django:模拟上次修改日期和修改次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1230496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com