как упорядочить по 1 в шаблоне Django

#django #django-templates

#django #django-шаблоны

Вопрос:

У меня есть этот шаблон Django, который работает

template = '%(function)s(%(expressions)s ORDER BY "col_name")'

Однако я хочу заменить «col_name» на 1, например

template = '%(function)s(%(expressions)s ORDER BY 1)'

Это не выполняет упорядочение должным образом

что я могу сделать?

Комментарии:

1. Ну, если вам ORDER BY 1 , всем полям присваивается некоторый «скрытый» столбец со значением 1 , это означает, что реального порядка нет, поскольку каждый порядок есть ORDER BY 1 .

2. Чего именно вы хотите достичь ORDER BY 1 ?

3. Я использовал это, и это сработало template = '%(function)s(%(expressions)s ORDER BY %(expressions)s)' , выражение содержит переданный кортеж полей (имен столбцов), и я хочу упорядочить по полям (именам столбцов) внутри функции

4. но тогда вы ORDER BY col1, col2, col3 . Итак, вы указываете имена столбцов в последовательности, разделенной запятыми.

5. да, я на самом деле хочу упорядочивать только по col1, упорядочение по всем столбцам — это самое близкое, что я нашел к рабочему решению до сих пор