# HG changeset patch # User Sylvain Thénault # Date 1246284575 -7200 # Node ID d9f5fd1879fc2ae40c11cd6297065cb879038439 # Parent 08c66a83c3ca8b1664baa994816779dd78df716a# Parent 488099333160d8997e4139d8f545be316896e6d1 doomed myself, merge diff -r 488099333160 -r d9f5fd1879fc server/session.py --- a/server/session.py Sat Jun 27 00:59:36 2009 +0200 +++ b/server/session.py Mon Jun 29 16:09:35 2009 +0200 @@ -317,6 +317,7 @@ self.critical('rollback error', exc_info=sys.exc_info()) continue self.pool.rollback() + self.debug('rollback for session %s done', self.id) finally: self._touch() self.pending_operations[:] = [] diff -r 488099333160 -r d9f5fd1879fc web/views/primary.py --- a/web/views/primary.py Sat Jun 27 00:59:36 2009 +0200 +++ b/web/views/primary.py Mon Jun 29 16:09:35 2009 +0200 @@ -119,7 +119,19 @@ def render_entity_attributes(self, entity, siderelations=None): for rschema, tschemas, role, dispctrl in self._section_def(entity, 'attributes'): - vid = dispctrl.get('vid', 'reledit') + # don't use reledit as default vid for composite relation + if rschema.is_final(): + defaultvid = 'reledit' + # XXX use entity.e_schema.role_rproperty(role, rschema, 'composite', tschemas[0]) once yams > 0.23.0 is out + elif role == 'subject' and \ + rschema.rproperty(entity.e_schema, tschemas[0], 'composite'): + defaultvid = 'csv' + elif role == 'object' and \ + rschema.rproperty(tschemas[0], entity.e_schema, 'composite'): + defaultvid = 'csv' + else: + defaultvid = 'reledit' + vid = dispctrl.get('vid', defaultvid) if rschema.is_final() or vid == 'reledit': value = entity.view(vid, rtype=rschema.type, role=role) else: