0

我有一个 Django 记录集(mysource)保存每天(for_date)的温度读数。例如,当最近 40 天的读数可供我使用时,我只想在图表上显示 20 天。为此,我执行以下操作:

for day_num in range (1, 32):
   if day_num % 2 == 1: # remove every 2nd day
      mysource = mysource.exclude(for_date__day=day_num)

...为了从查询集中删除每一秒的读数。它工作得很好,但现在我想显示最近的阅读和最近的阅读,并确保我不会从查询集中排除它们。是否有任何简单/快速的方法来为 Django 查询集中的记录指定排除项,只要这些记录既不位于查询集的开始 X 记录也不位于查询集的结束 X 记录,这样我就可以完成此操作?

4

1 回答 1

1

使用查询获取要排除的记录的 PK,然后在主查询中排除它们 ( .exclude(pk__in=...)),

于 2012-09-24T01:18:58.663 回答