# HG changeset patch # User Alexandre Fayolle # Date 1303467648 -7200 # Node ID 0d2ad493735bc615767c2a7170d1a8920dd224ba # Parent 2f72b958ae22ff700d3a2fe8b10695caa7572892# Parent ecae5b5264374846196e130532201711bf056aaf merge diff -r 2f72b958ae22 -r 0d2ad493735b entity.py --- a/entity.py Fri Apr 22 12:02:32 2011 +0200 +++ b/entity.py Fri Apr 22 12:20:48 2011 +0200 @@ -266,7 +266,6 @@ restrictions = set() pending_relations = [] eschema = cls.e_schema - cache = {} for attr, value in kwargs.items(): if attr.startswith('reverse_'): attr = attr[len('reverse_'):] @@ -275,9 +274,7 @@ role = 'subject' assert eschema.has_relation(attr, role) rschema = eschema.subjrels[attr] if role == 'subject' else eschema.objrels[attr] - if rschema.final: - cache[attr] = value # XXX what if value is processed in pre add hook (eg timeseries)? - elif isinstance(value, (tuple, list, set, frozenset)): + if not rschema.final and isinstance(value, (tuple, list, set, frozenset)): if len(value) == 1: value = iter(value).next() else: @@ -302,7 +299,6 @@ if restrictions: rql = '%s WHERE %s' % (rql, ', '.join(restrictions)) created = execute(rql, kwargs).get_entity(0, 0) - created.cw_attr_cache.update(cache) for attr, values in pending_relations: if attr.startswith('reverse_'): restr = 'Y %s X' % attr[len('reverse_'):]