Django - 将模型字段设置为DB"现在"模型方法中的值

时间:2018-03-20 14:59:24

标签: django postgresql

我正在尝试将其中一个模型的DateTime字段设置为" now"。为了避免任何时差问题,我试图坚持在DB中生成的时间值(与在Python中生成的那些相反,如datetime.datetime.now())。但是,从实例方法中看起来很难做到这一点。我正在尝试做类似下面的事情:

class MyModel:
    ...
    last_fetched = models.DateTimeField(null=True)

    def fetch_scenes(self):
        # Do some work
        ...
        self.objects.filter(id=self.id).update(last_fetched=django.db.models.functions.Now())

Django不允许从实例方法中访问模型的管理器(可能是有充分理由的)。有没有办法访问和更新仅由实例组成的查询集?

1 个答案:

答案 0 :(得分:0)

将方法移至model's manager。然后,您可以按预期访问查询集。