У меня проблема с упорядочением запросов django.
Моя модель содержит поле с именем position
(PositiveSmallIntegerField), которое я хотел бы использовать для запроса результатов запроса.
Я использую order_by('position')
, который отлично работает.
Проблема: поле my position
имеет значение NULL (null=True, blank=True
), потому что я не хочу указывать позицию для каждых 50000 экземпляров моей модели: (
Когда некоторые экземпляры имеют NULL-позицию, 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?
Большое спасибо!