2012-03-10 152 views
5

我有可能爲空,ID喜歡做qs.order_by(「field__isnull」,「名」)時間字段,但是這會導致:django通過isnull值排序?

Join on field 'field' not permitted. Did you misspell 'isnull' for the lookup type?

這是可能的呢?

回答

8

可能有更好的方法,但是一種可能性是註釋您的查詢集:

from django.db.models import Count 
qs.annotate(null_count=Count('field_name')).order_by('null_count') 
-2

我希望你的模型是這樣的:

date_deleted = models.DateTimeField(blank=True, null=True) 

如果真 那麼你可以這樣做:

qs.order_by('-date_deleted') 
+0

這強制按日期排序非空值,而不是asker只想要2組,null和非null。 – Rebs 2014-10-02 07:04:47