changeset c460d5163a30 in tryton:default
details: https://hg.tryton.org/tryton?cmd=changeset;node=c460d5163a30
description:
        Ensure to always store and compare sorted multiselection value

        issue9001
        review268761002
diffstat:

 tryton/gui/window/view_form/model/field.py |  12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diffs (29 lines):

diff -r bfb8b9a6d64d -r c460d5163a30 tryton/gui/window/view_form/model/field.py
--- a/tryton/gui/window/view_form/model/field.py        Mon Jan 20 11:26:30 
2020 +0100
+++ b/tryton/gui/window/view_form/model/field.py        Mon Jan 20 11:31:16 
2020 +0100
@@ -229,7 +229,12 @@
     _default = None
 
     def get(self, record):
-        return super().get(record) or self._default
+        value = super().get(record)
+        if not value:
+            value = self._default
+        else:
+            value.sort()
+        return value
 
     def get_eval(self, record):
         value = super().get_eval(record)
@@ -237,6 +242,11 @@
             value = []
         return value
 
+    def set_client(self, record, value, force_change=False):
+        if value:
+            value = sorted(value)
+        super().set_client(record, value, force_change=force_change)
+
 
 class DateTimeField(Field):
 

Reply via email to