Django在条件之后更新模型

Django在条件之后更新模型,django,django-models,Django,Django Models,我有一个这样的模型 class Foo(models.Model): bet = models.IntegerField() end_date = models.DateTimeField() \\some date in the future is_canceled = models.BooleanField(default=False) 当end\u date=datetime.now()时,我需要自动设置is\u cancelled=True,您可以创

我有一个这样的模型

class Foo(models.Model):
      bet = models.IntegerField()
      end_date = models.DateTimeField() \\some date in the future
      is_canceled = models.BooleanField(default=False)
end\u date=datetime.now()时,我需要自动设置is\u cancelled=True,您可以创建一个从
cron
定期运行的属性,并更改字段值

now = datetime.now()
Foo.objects.filter(end_date__lte=now).update(is_canceled=True)
但最好让这个领域充满活力

class Foo(models.Model):
    bet = models.IntegerField()
    end_date = models.DateTimeField() \\some date in the future

    @property
    def is_canceled(self):
        if self.end_date <= datetime.now():
            return True
        else:
            return False

some_foo = Foo.objects.first()
if some_foo.is_canceled:
    ...
Foo类(models.Model):
bet=models.IntegerField()
end_date=models.DateTimeField()\\将来的某个日期
@财产
def已取消(自):
如果self.end_date您可以创建一个从
cron
定期运行的文件,并更改字段值

now = datetime.now()
Foo.objects.filter(end_date__lte=now).update(is_canceled=True)
但最好让这个领域充满活力

class Foo(models.Model):
    bet = models.IntegerField()
    end_date = models.DateTimeField() \\some date in the future

    @property
    def is_canceled(self):
        if self.end_date <= datetime.now():
            return True
        else:
            return False

some_foo = Foo.objects.first()
if some_foo.is_canceled:
    ...
Foo类(models.Model):
bet=models.IntegerField()
end_date=models.DateTimeField()\\将来的某个日期
@财产
def已取消(自):
如果self.end\u日期