Python 使用django筛选器排序时如何忽略空日期
使用我可以设置排序,并按日期排序 但是,当我想按可空日期排序时,我希望空条目始终位于列表的底部。有没有办法控制或覆盖这个?我尝试使用extra修改视图的queryset: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
# 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)
...
你可以在这里读到它:它没有回答我的问题,但它基本上解决了问题,尽管我还不知道什么。谢谢你。我考虑过解决问题。