changeset 3583f192a9ef in trytond:default
details: https://hg.tryton.org/trytond?cmd=changeset&node=3583f192a9ef
description:
Use dictionary as search_order on Reference field
issue11251
review387941002
diffstat:
CHANGELOG | 1 +
doc/ref/models/fields.rst | 4 +++-
trytond/model/fields/reference.py | 6 +++++-
3 files changed, 9 insertions(+), 2 deletions(-)
diffs (38 lines):
diff -r 7c80c96d7906 -r 3583f192a9ef CHANGELOG
--- a/CHANGELOG Tue Feb 22 22:58:33 2022 +0100
+++ b/CHANGELOG Tue Feb 22 23:06:02 2022 +0100
@@ -1,3 +1,4 @@
+* Use dictionary as search_order on Reference field
* Retry sending email on temporary failure
* Order not sorted Selection by index definition
* Add optional column on tree view
diff -r 7c80c96d7906 -r 3583f192a9ef doc/ref/models/fields.rst
--- a/doc/ref/models/fields.rst Tue Feb 22 22:58:33 2022 +0100
+++ b/doc/ref/models/fields.rst Tue Feb 22 23:06:02 2022 +0100
@@ -648,7 +648,9 @@
.. attribute:: Reference.search_order
- Same as :attr:`Many2One.search_order`
+ A dictionary that contains a :ref:`PYSON <ref-pyson>` expression defining
+ the default order used to display search results in the clients per model
+ name.
.. attribute:: Reference.search_context
diff -r 7c80c96d7906 -r 3583f192a9ef trytond/model/fields/reference.py
--- a/trytond/model/fields/reference.py Tue Feb 22 22:58:33 2022 +0100
+++ b/trytond/model/fields/reference.py Tue Feb 22 23:06:02 2022 +0100
@@ -85,7 +85,11 @@
@search_order.setter
def search_order(self, value):
- search_order_validate(value)
+ if value is None:
+ value = {}
+ assert isinstance(value, dict)
+ for order in value.values():
+ search_order_validate(order)
self.__search_order = value
@property