[FIX] fields: make sure fields are set up before using them

Non-setup fields could cause problems in two places:
- when traversing the chain of fields in related fields;
- when adding recomputation triggers on inverse fields

Both issues are fixed by this patch.
This commit is contained in:
Raphael Collet
2014-12-11 10:12:46 +01:00
parent 107ba240de
commit 058eaf01df
+3
View File
@@ -447,6 +447,7 @@ class Field(object):
for name in self.related:
recs._setup_fields()
field = recs._fields[name]
field.setup(env)
recs = recs[name]
fields.append(field)
@@ -569,6 +570,8 @@ class Field(object):
self.recursive = True
continue
field.setup(env)
#_logger.debug("Add trigger on %s to recompute %s", field, self)
field._triggers.add((self, '.'.join(path0 or ['id'])))