changeset bc5ffeed2bf3 in trytond:default
details: https://hg.tryton.org/trytond?cmd=changeset&node=bc5ffeed2bf3
description:
        Cache RPC call for class method selection

        issue11793
        review427971003
diffstat:

 CHANGELOG                              |  2 ++
 trytond/model/fields/multiselection.py |  3 ++-
 trytond/model/fields/reference.py      |  3 ++-
 trytond/model/fields/selection.py      |  3 ++-
 4 files changed, 8 insertions(+), 3 deletions(-)

diffs (51 lines):

diff -r 72bbf1073be9 -r bc5ffeed2bf3 CHANGELOG
--- a/CHANGELOG Sat Nov 05 09:54:14 2022 +0100
+++ b/CHANGELOG Sat Nov 05 09:57:01 2022 +0100
@@ -1,3 +1,5 @@
+* Cache RPC call for class method selection
+
 Version 6.6.0 - 2022-10-31
 --------------------------
 * Bug fixes (see mercurial logs for details)
diff -r 72bbf1073be9 -r bc5ffeed2bf3 trytond/model/fields/multiselection.py
--- a/trytond/model/fields/multiselection.py    Sat Nov 05 09:54:14 2022 +0100
+++ b/trytond/model/fields/multiselection.py    Sat Nov 05 09:57:01 2022 +0100
@@ -51,8 +51,9 @@
             assert hasattr(model, self.selection), \
                 'Missing %s on model %s' % (self.selection, model.__name__)
             instantiate = 0 if self.selection_change_with else None
+            cache = dict(days=1) if instantiate is None else None
             model.__rpc__.setdefault(
-                self.selection, RPC(instantiate=instantiate))
+                self.selection, RPC(instantiate=instantiate, cache=cache))
 
     def get(self, ids, model, name, values=None):
         lists = {id: () for id in ids}
diff -r 72bbf1073be9 -r bc5ffeed2bf3 trytond/model/fields/reference.py
--- a/trytond/model/fields/reference.py Sat Nov 05 09:54:14 2022 +0100
+++ b/trytond/model/fields/reference.py Sat Nov 05 09:57:01 2022 +0100
@@ -110,8 +110,9 @@
             assert hasattr(model, self.selection), \
                 'Missing %s on model %s' % (self.selection, model.__name__)
             instantiate = 0 if self.selection_change_with else None
+            cache = dict(days=1) if instantiate is None else None
             model.__rpc__.setdefault(
-                self.selection, RPC(instantiate=instantiate))
+                self.selection, RPC(instantiate=instantiate, cache=cache))
 
     def get(self, ids, model, name, values=None):
         '''
diff -r 72bbf1073be9 -r bc5ffeed2bf3 trytond/model/fields/selection.py
--- a/trytond/model/fields/selection.py Sat Nov 05 09:54:14 2022 +0100
+++ b/trytond/model/fields/selection.py Sat Nov 05 09:57:01 2022 +0100
@@ -116,8 +116,9 @@
             assert hasattr(model, self.selection), \
                 'Missing %s on model %s' % (self.selection, model.__name__)
             instantiate = 0 if self.selection_change_with else None
+            cache = dict(days=1) if instantiate is None else None
             model.__rpc__.setdefault(
-                self.selection, RPC(instantiate=instantiate))
+                self.selection, RPC(instantiate=instantiate, cache=cache))
 
     def convert_order(self, name, tables, Model):
         if getattr(Model, 'order_%s' % name, None):

Reply via email to