# HG changeset patch # User Sylvain Thénault # Date 1269850801 -7200 # Node ID cb066d29166a1bfe70371084abded2e1a2cfa3c0 # Parent 2021b3237015e684dd4cf2de0918b997ed917dea fix dataimport for 3.7.2 diff -r 2021b3237015 -r cb066d29166a dataimport.py --- a/dataimport.py Fri Mar 26 19:22:04 2010 +0100 +++ b/dataimport.py Mon Mar 29 10:20:01 2010 +0200 @@ -558,7 +558,10 @@ self._nb_inserted_entities = 0 self._nb_inserted_types = 0 self._nb_inserted_relations = 0 - self.rql = session.unsafe_execute + self.rql = session.execute + # deactivate security + session.set_read_security(False) + session.set_write_security(False) # disable undoing session.undo_actions = frozenset() @@ -570,9 +573,10 @@ entity._related_cache = {} self.metagen.init_entity(entity) entity.update(kwargs) + entity.edited_attributes = set(entity) session = self.session self.source.add_entity(session, entity) - self.source.add_info(session, entity, self.source, complete=False) + self.source.add_info(session, entity, self.source, None, complete=False) for rtype, targeteids in rels.iteritems(): # targeteids may be a single eid or a list of eids inlined = self.rschema(rtype).inlined @@ -621,7 +625,7 @@ self.etype_attrs = [] self.etype_rels = [] # attributes/relations specific to each entity - self.entity_attrs = ['eid', 'cwuri'] + self.entity_attrs = ['cwuri'] #self.entity_rels = [] XXX not handled (YAGNI?) schema = session.vreg.schema rschema = schema.rschema @@ -650,18 +654,15 @@ return entity, rels def init_entity(self, entity): + entity.eid = self.source.create_eid(self.session) for attr in self.entity_attrs: entity[attr] = self.generate(entity, attr) - entity.eid = entity['eid'] def generate(self, entity, rtype): return getattr(self, 'gen_%s' % rtype)(entity) - def gen_eid(self, entity): - return self.source.create_eid(self.session) - def gen_cwuri(self, entity): - return u'%seid/%s' % (self.baseurl, entity['eid']) + return u'%seid/%s' % (self.baseurl, entity.eid) def gen_creation_date(self, entity): return self.time