我想基于一个模型的两个字段进行查询,一个日期,被一个int偏移,用作timedelta
model.objects.filter(last_date__gte=datetime.now()-timedelta(days=F('interval')))
我的模型是这样的:
class Line(models.Model):
last_date = models.DateTimeField(auto_now=True)
interval = models.IntegerField(default=0)
我正在使用Django 2.0和db.sqlite3
我发现一些消息来源是什么在Django的新版本更换为DateModifierNode并进行查询使用F()和timedelta在Django的,但他们是没有帮助的。
有些人建议使用工期字段,但是我希望拼命地以天为单位输入间隔,每当我使用工期字段时,管理员都需要以[days hh:mm:ss]的形式在管理员表格中输入间隔。
有些提供了一种方法
model.objects.filter(last_date__gte=datetime.now()-timedelta(days=1)*F('interval'))
在db.sqlite3中不起作用并返回错误。
请给我建议一些解决方案,例如使用持续时间字段并仅输入天数的管理员,或者使用天数的整数字段的解决方案。
收到一只叮咚
相关分类