У меня проблема с упорядочением набора запросов django.
Моя модель содержит поле с именем position
(a PositiveSmallIntegerField ), которое я хотел бы использовать для упорядочения результатов запроса.
Я использую order_by('position')
, который прекрасно работает.
Проблема : мое поле position
имеет значение NULL (null=True, blank=True
), потому что я не хочу указывать позицию для каждых 50000 экземпляров моей модели: (
Когда некоторые экземпляры имеют нулевую «позицию», order_by
возвращает их в начало списка: я бы хотел, чтобы они были в конце ...
В RAW SQL я писал такие вещи, как "IF(position IS NULL or position='', 1, 0)
" (см. http://www.shawnolson.net/a/730/mysql-sort-order-with-null.html): возможно ли получить тот же результат, используя Django, без написания необработанного SQL?
Большое спасибо!