changeset 8f0ce648a628 in modules/sale:default
details: https://hg.tryton.org/modules/sale?cmd=changeset&node=8f0ce648a628
description:
        Add straight values to wizard state view

        issue11703
        review431591006
diffstat:

 sale.py                               |  13 ++++++++-----
 tests/scenario_sale_modify_header.rst |   2 ++
 2 files changed, 10 insertions(+), 5 deletions(-)

diffs (52 lines):

diff -r 41337486223b -r 8f0ce648a628 sale.py
--- a/sale.py   Thu Sep 15 21:47:26 2022 +0200
+++ b/sale.py   Sat Oct 01 14:45:59 2022 +0200
@@ -2025,6 +2025,9 @@
             return super(ModifyHeaderStateView, self).get_view(
                 wizard, state_name)
 
+    def get_defaults(self, wizard, state_name, fields):
+        return {}
+
 
 class ModifyHeader(Wizard):
     "Modify Header"
@@ -2043,9 +2046,9 @@
                     sale=self.record.rec_name))
         return self.record
 
-    def default_start(self, fields):
+    def value_start(self, fields):
         sale = self.get_sale()
-        defaults = {}
+        values = {}
         for fieldname in fields:
             value = getattr(sale, fieldname)
             if isinstance(value, Model):
@@ -2055,11 +2058,11 @@
                     value = value.id
             elif isinstance(value, (list, tuple)):
                 value = [r.id for r in value]
-            defaults[fieldname] = value
+            values[fieldname] = value
 
         # Mimic an empty sale in draft state to get the fields' states right
-        defaults['lines'] = []
-        return defaults
+        values['lines'] = []
+        return values
 
     def transition_modify(self):
         pool = Pool()
diff -r 41337486223b -r 8f0ce648a628 tests/scenario_sale_modify_header.rst
--- a/tests/scenario_sale_modify_header.rst     Thu Sep 15 21:47:26 2022 +0200
+++ b/tests/scenario_sale_modify_header.rst     Sat Oct 01 14:45:59 2022 +0200
@@ -89,6 +89,8 @@
 Change the party::
 
     >>> modify_header = Wizard('sale.modify_header', [sale])
+    >>> modify_header.form.party == customer
+    True
     >>> modify_header.form.party = another
     >>> modify_header.execute('modify')
 

Reply via email to