Найти - Пользователи
Полная версия: КАК НАПИСАТЬ ORDER_BY POSITION=0, POSITION НА DJANGO ORM ?
Начало » Django » КАК НАПИСАТЬ ORDER_BY POSITION=0, POSITION НА DJANGO ORM ?
1
martin67
Очень банальная задача, но я туплю.

Есть список объектов из базы отсортированных по позиции (position) которая по-умолчанию = 0.
Как отсортировать по позиции, чтобы с position=0 были в конце?

То есть на SQL это вот так:

SELECT * FROM `catalog` ORDER BY position=0, position

Получиться
1
2
3

10
11
0
0
0


А как это реализовать на Django ORM? .order_by('position=0', ‘position’) не работает.
martin67
сделал с помощью extra:

.extra(select={'poz' : ‘position=0’}).order_by('poz', ‘position’)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB