Django日期时间字段已压缩到现在

Django日期时间字段已压缩到现在,django,datetime,django-models,field,Django,Datetime,Django Models,Field,请帮忙 我的模型里有这个 class Notificator(models.Model): headline = models.CharField(max_length=255, default='') vehicle = models.ForeignKey(Vehicle, on_delete=models.CASCADE) start_date = models.DateTimeField() end_date = models.DateTimeField()

请帮忙

我的模型里有这个

class Notificator(models.Model):
    headline = models.CharField(max_length=255, default='')
    vehicle = models.ForeignKey(Vehicle, on_delete=models.CASCADE)
    start_date = models.DateTimeField()
    end_date = models.DateTimeField()
    bought_from = models.ManyToManyField(VigneteSeller, blank=True)
    start_alert = models.DateTimeField()
    start_notifying_me = models.IntegerField(default=20)
    def save(self):
        d = timedelta(days=self.start_notifying_me)
        if not self.id:
            self.start_alert = self.end_date - d
            super(Notificator, self).save()

    @classmethod
    def starter(cls):
        ready = []
        if timezone.now() >= cls.start_alert:
            ready.append(cls.headline)
        return ready

    def __str__(self):
        return self.headline

我只想从“start\u alert”字段收集所有实例,并将其与时区进行比较。立即使用starter函数返回,我就卡住了。

这将返回所有开始时间大于现在的实例

from datetime import datetime

Notificator.objects.filter(start_alert__gte=datetime.now())

我得到了这个错误-->TypeError(“>=”在“datetime.datetime”和“DeferredAttribute”的实例之间不受支持)
classmethod
在这里没有任何用途。只需使用常规方法,并使用
self
访问实例的属性。嗨,盲兔,我也尝试过这个方法,但不起作用。你想处理数据吗?如果您同时显示view.py,可能会有所帮助。您好,盲兔,我没有在views.py中使用它。我只是想把它返回到另一个模块,这将是启动函数。我没有问,但我应该在models.py中使用这段代码。在models.py中使用是否正确?我建议不要,我认为最好使用上面显示的代码来创建Notificator模型的查询集并使用它。