Python 使用django筛选器排序时如何忽略空日期

Python 使用django筛选器排序时如何忽略空日期,python,django,django-filter,Python,Django,Django Filter,使用我可以设置排序,并按日期排序 但是,当我想按可空日期排序时,我希望空条目始终位于列表的底部。有没有办法控制或覆盖这个?我尝试使用extra修改视图的queryset: # following ensures no projects are at bottom of list if self.request.GET.get('o', None) == "-most_recent_project": queryset = queryset.extra(select

使用我可以设置排序,并按日期排序

但是,当我想按可空日期排序时,我希望空条目始终位于列表的底部。有没有办法控制或覆盖这个?我尝试使用extra修改视图的queryset:

    # following ensures no projects are at bottom of list
    if self.request.GET.get('o', None) == "-most_recent_project":
        queryset = queryset.extra(select={
            'most_recent_project_date_is_not_null': 'most_recent_project IS NOT NULL',
        },
                                  order_by=['most_recent_project_date_is_not_null', 'most_recent_project'],
        )

但它不起作用,我认为django_过滤器覆盖了这一点

您可以使用以下内容:

if self.request.GET.get('o') == '-most_recent_project':
    queryset = queryset.filter(most_recent_project__isnull=False)
...

你可以在这里读到它:

它没有回答我的问题,但它基本上解决了问题,尽管我还不知道什么。谢谢你。我考虑过解决问题。