Django: Model: Null as First or Last When Ordering

 20th August 2020 at 2:19pm

排序时将 null 值排在前面或者后面。

Django 1.11 给 F expression 加了这个 能力。我是参考了 StackOverflow 的 帖子 发现的。例子如下:

books = Book.objects.order_by(
    F('publication_year').desc(nulls_last=True),
    F('publication_month').desc(nulls_last=True),
    F('publication_day').desc(nulls_last=True),
)