【发布时间】:2022-12-03 23:05:26
【问题描述】:
我有一个学习年模型,它有一个开始和结束日期。
class StudyYear(models.Model):
date_begin = models.DateField(...)
date_end = models.DateField(...)
我需要一个查询集,其中有每个研究年度的记录,其日期范围内有一个月 (start_date:end_date)
例子: 对于研究年 (09/01/2022:01/02/2023),qs 应包含记录:
...
(code=9_2022, name='September 2022'),
(code=10_2022, name='November 2022'),
(code=11_2022, name='October 2022'),
(code=12_2022, name='December 2022'),
(code=1_2023, name='January 2023'),
(code=2_2023, name='February 2023'),
...
老实说,我不知道如何解决这个问题,我真的希望得到你的帮助!
更新: 例如,我已经有了具有所需学习年限的 Queryset,为了简单起见,它包含一条记录:
Queryset(StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023'})
我需要获取如下记录:
Queryset([
StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023', code='9_2022', name='September 2022'}
StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023', code='10_2022', name='October 2022'}
StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023', code='11_2022', name='November 2022'}
StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023', code='12_2022', name='December 2022'}
StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023', code='1_2023', name='January 2023'}
StudyYear{id=1, date_begin='09/01/2022', date_end='02/01/2023', code='2_2023', name='February 2023'}
])
【问题讨论】:
-
您是否还需要将同一个月的所有记录汇总在一起?
-
@DivyaPrakash,不,我只需要所有记录的 qs,最好只有唯一的记录
-
您只想要这 5 个月的记录?
-
@DivyaPrakash,我想在一个 qs 中获取每个学习年的 begin_date 和 date_end 范围内的所有月份
-
您能否检查答案,并让我知道该方法是否有效?
标签: django