【发布时间】:2020-08-18 16:53:13
【问题描述】:
我有一个模型,其中有一个日期字段。
我正在尝试通过传递日期对象或空值来查询模型。
查询应该根据 ORM 查询中提供的输入以不同的方式运行。
我将向 ORM 查询 st_date 和 exp_date 传递两个变量。 exp_date 有时可以为 None。
如果 exp_date 中有某个值,我需要查询模型并获取所有scheduled_end_date 大于提供的 exp_date 的记录。如果不是,则根本不应该考虑过滤器。
models.py:
class DtModel(models.Model):
scheduled_start_date = DateField()
scheduled_end_date = DateField()
ORM 查询:
st_date="2020-05-01"
exp_date=None
DtModel.objects.filter(scheduled_start_date__gte=st_date, scheduled_end_date__lte=exp_date)
当exp_date 尝试比较None 和date field 时,它会抛出一个错误?
ValueError: 不能使用 None 作为查询值
【问题讨论】:
标签: python django django-models django-views django-orm