Python Django queryset获取通过选定日期的所有数据

Python Django queryset获取通过选定日期的所有数据,python,django,api,Python,Django,Api,我从模型调用项目中创建了一个对象,如下所示: [ { "name": "project A" "start_date": 2019-01-01 "end_date": 2019-02-15 }, { "name": "project B" "start_date": 2019-01-15 "end_date": 2019-02-01 }, { "name": "project C" "start_date": 2019-02-27

我从模型调用
项目中创建了一个对象,如下所示:

[
{
    "name": "project A"
    "start_date": 2019-01-01
    "end_date": 2019-02-15
},
{
    "name": "project B"
    "start_date": 2019-01-15
    "end_date": 2019-02-01
},
{
    "name": "project C"
    "start_date": 2019-02-27
    "end_date": 2019-03-12
},
]
如果我有一个日期范围选择器,我选择从
2019-01-07
2019-02-10
的日期,我的查询如下所示

model_object = Project.objects.all().filter(start_date__gte=(2019-01-07), end_date__lte=(2019-02-10))
model\u object
queryset的结果将是:

{
    "name": "project B"
    "start_date": 2019-01-15
    "end_date": 2019-02-01
},
我现在想要的是如何过滤查询,以获得从日期
2019-01-07
2019-02-10
之间正在进行的所有对象,这意味着结果还应该包括
项目A
,因为它仍然在从
2019-01-01
2019-02-15
期间进行,即使它是在2019-01-07之前开始

非常感谢您的帮助。

您可以这样尝试:

import dateutil.parser

model_object = Project.objects.filter(start_date__lte=dateutil.parser.parse('2019-01-07'),  end_date__gte=dateutil.parser.parse('2019-02-10'))

您好tq为了您的快速回复,我尝试了以下方法:
Project.objects.Project.objects.filter(Q(开始日期=(2019-01-07))| Q(结束日期=(2019-02-10))。值列表(“名称”,“开始日期”,“结束日期”)
现在它根本不提供任何结果,也许您需要将
开始日期
结束日期
转换为正确的模型类型。你能展示一下你的模型吗?目前两个日期字段都是
DateTimeField(),但是在
end\u date
上进行过滤怎么样?现在我只是尝试获取所有正在进行的数据,这意味着即使该对象数据在我的查询开始日期之前开始,但如果它仍然在进行,那么也要获取它的数据。