Don't call default_get for new record from on_change

This is to have the same behavior as the client.
The default values must be managed by the values of the on_change

review323001
This commit is contained in:
Cédric Krier committed 2012-04-13 13:20:14 +02:00
1 parent 600bc0c8fc
commit 8d247621fb
1 file changed
+3 -3
+3 -3
View File
@@ -506,7 +506,7 @@ class Model(object):
_config = None
_fields = None
def __init__(self, id=None, **kwargs):
def __init__(self, id=None, _default=True, **kwargs):
super(Model, self).__init__()
if id:
assert not kwargs
@@ -518,7 +518,7 @@ class Model(object):
self._parent = None # store the parent record
self._parent_field_name = '' # store the field name in parent record
self._parent_name = '' # store the field name to parent record
if self.id < 0:
if self.id < 0 and _default:
self._default_get()
for field_name, value in kwargs.iteritems():
@@ -735,7 +735,7 @@ class Model(object):
for vals in value.get('add', []):
relation = Model.get(self._fields[field]['relation'],
self._config)
record = relation()
record = relation(_default=False)
for i, j in vals.iteritems():
if '.' in i:
continue