gpt4 book ai didi

python - 在 Django 模型中的字段更新

转载 作者:太空狗 更新时间:2023-10-30 00:29:32 25 4
gpt4 key购买 nike

我在 django 模型中有一个 updated_at 字段,如下所示:

class Location(models.Model):
updated_at = models.DateTimeField(auto_now=True, default=timezone.now())

如果模型是刚刚创建的,它会在 updated_at 字段中保存模型首次创建时的当前时间。如果模型在过去一小时内更新,我将使用它来做一些特别的事情。问题是我只想在过去一小时内更新模型时才这样做,而不是在创建模型时这样做。如何区分模型是在过去一小时内更新还是在过去一小时内创建?

最佳答案

我在模型上只有 2 个字段,一个用于创建,一个用于记录更新时间,就像这样

class Location(models.Model):
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)

如果您使用的是 django-model-utils,您可以将 TimeStampedModel 子类化,它既有创建字段也有修改字段。

#Django model utils TimeStampedModel
class TimeStampedModel(models.Model):
"""
An abstract base class model that provides self-updating
``created`` and ``modified`` fields.

"""
created = AutoCreatedField(_('created'))
modified = AutoLastModifiedField(_('modified'))

class Meta:
abstract = True

class Location(TimeStampedModel):
"""
Add additional fields
"""

关于python - 在 Django 模型中的字段更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31092841/

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