Я не могу понять поведение Odoo API. Это сводит меня с ума.
Как вы, возможно, знаете, если вы хотите упорядочить модель по некоторым ее полям, вам необходимо изменить атрибут _order
модели. Работает нормально.
Теперь предположим, что вы хотите упорядочить определенное представление по некоторым полям без изменения обычного порядка модели (это означает: упорядочить определенное представление по одним полям, а остальные виды той же модели по другим полям).
В этом случае вы должны использовать код XML, указав атрибут default_order
в теге kanban
или tree
, в зависимости от того, какое представление вы изменяете.
Я успешно использовал это в прошлом. Поэтому я хотел снова применить это к представлению канбан (на этот раз я хочу упорядочить по полю boolean, char и еще одному char) .
Теперь мое удивление: упорядочивание по полю логического меняет порядок следующих полей, если оно имеет значение False
.
например. У нас есть 6 записей, которые мы хотим отсортировать по логическому значению, имени и фамилии; в канбан-представлении с default_order
:
- Верно, Джон, Доу
- Правда, Джейн, Доу
- Верно, Джон, Xoe
- Ложь, Джон, умереть
- Ложь, Джейн, умри
- Ложь, Джейн, Се
Итак, в примере в представлении канбан мы увидим, что они упорядочены следующим образом:
- Правда, Джейн, Доу
- Верно, Джон, Доу
- Верно, Джон, Xoe
- Ложь, Джон, умереть
- Ложь, Джейн, Се
- Ложь, Джейн, умри
Как видите, если используются логические значения True
, записи упорядочиваются по логическому, имени и фамилии, что я и хочу. Но если он имеет значение False
, записи упорядочиваются по логическому, имени DESC, фамилии DESC.
В чем дело? Вы испытали то же самое? Как сделать заказ с помощью логического, затем char, а затем еще одного char ??