Improve ModelStorage.copy

* Allow callable in copy default
* Support dotted notation in copy default
* Use setdefault in copy
* Copy default when needed
* Do not set default state in copy
* Use callable and dotted notation in copy default

issue5576
issue7648
review72291002
This commit is contained in:
Cédric Krier
2018-09-01 01:02:04 +02:00
parent 53950bf41e
commit 2e5089a5f6
+3 -2
View File
@@ -88,8 +88,9 @@ class SaleLine(metaclass=PoolMeta):
def copy(cls, lines, default=None):
if default is None:
default = {}
default = default.copy()
default['purchase_request'] = None
else:
default = default.copy()
default.setdefault('purchase_request', None)
return super(SaleLine, cls).copy(lines, default=default)
@property