Add index method to order field set calls

issue7090
review46301002
This commit is contained in:
Cédric Krier committed 2018-04-05 19:18:52 +02:00
1 parent 710c0ab2e9
commit 60f167bcfe
4 files changed
+14 -2

No files matched your search

+1
View File
@@ -1,3 +1,4 @@
* Add index method to order field set calls
* Add deactivable mixin
* Ensure active field is present on tree view
* Manage depends xml attribute on field tag
+4
View File
@@ -268,6 +268,10 @@ Class methods:
``on_write`` is set and ``condition`` was false before
:meth:`~ModelStorage.write` and true after.
.. classmethod:: ModelStorage.index_set_field(name)
Return the index sort order of the field set calls.
.. classmethod:: ModelStorage.delete(records)
Delete records.
+4 -2
View File
@@ -642,7 +642,8 @@ class ModelSQL(ModelStorage):
Translation.set_ids(name, 'model', Transaction().language,
translations.keys(), translations.values())
for fname, fargs in fields_to_set.iteritems():
for fname in sorted(fields_to_set, key=cls.index_set_field):
fargs = fields_to_set[fname]
field = cls._fields[fname]
field.set(cls, fname, *fargs)
@@ -1015,7 +1016,8 @@ class ModelSQL(ModelStorage):
cls._update_mptt(field_names, [ids] * len(field_names), values)
all_field_names |= set(field_names)
for fname, fargs in fields_to_set.iteritems():
for fname in sorted(fields_to_set, key=cls.index_set_field):
fargs = fields_to_set[fname]
field = cls._fields[fname]
field.set(cls, fname, *fargs)
+5
View File
@@ -214,6 +214,11 @@ class ModelStorage(Model):
if triggered:
Trigger.trigger_action(triggered, trigger)
@classmethod
def index_set_field(cls, name):
"Returns the index sort order of the field set calls."
return 0
@classmethod
def delete(cls, records):
'''