Сортировка наборов запросов: указание параметров сортировки столбцов для запроса ORM django
Я начал исследовать, почему мои запросы Django Model.objects.filter (условие = переменная) .order_by (текстовая колонка) не дают объекты в правильном порядке. И обнаружил, что это проблема базы данных (Postgresql).
В моем предыдущем вопросе (Postgresql сортировка конкретных символов языка (сопоставление)Я понял (с большой помощью отzero323 на самом деле заставить его работать), что я могу указать параметры сортировки для запроса к базе данных, как это:
SELECT nimi COLLATE "et_EE" FROM test ORDER BY nimi ASC;
Но насколько я могу видеть, order_by принимает только имена полей в качестве аргументов.
Мне было интересно, если это как-то возможно расширить эту функциональность, чтобы включить также параметр сопоставления? Возможно ли это как-то взломать с помощью миксинов или еще чего-нибудь? Или запрос функции - единственный способ сделать это прямо сейчас?
Я хотел бы, чтобы это работало примерно так:
Model.objects.filter(condition = variable).order_by(*fieldnames, collation = 'et_EE')
Edit1: Очевидно, я не единственный, кто просит об этом:https://groups.google.com/forum/#!msg/django-developers/0iESVnawNAY/JefMfAm7nQMJ
Алан