176 if not ( |
176 if not ( |
177 (field.role == 'subject' and eschema.has_subject_relation(field.name)) |
177 (field.role == 'subject' and eschema.has_subject_relation(field.name)) |
178 or |
178 or |
179 (field.role == 'object' and eschema.has_object_relation(field.name))): |
179 (field.role == 'object' and eschema.has_object_relation(field.name))): |
180 continue |
180 continue |
181 rschema = self._cw.schema.rschema(field.name) |
181 rschema = self._cw.vreg.schema.rschema(field.name) |
182 if rschema.is_final(): |
182 if rschema.is_final(): |
183 rqlquery.kwargs[attr] = value |
183 rqlquery.kwargs[attr] = value |
184 rqlquery.edited.append('X %s %%(%s)s' % (attr, attr)) |
184 rqlquery.edited.append('X %s %%(%s)s' % (attr, attr)) |
185 elif rschema.inlined: |
185 elif rschema.inlined: |
186 self.handle_inlined_relation(form, field, entity, rqlquery) |
186 self.handle_inlined_relation(form, field, entity, rqlquery) |
244 origvalues = set(row[0] for row in entity.related(field.name, field.role)) |
244 origvalues = set(row[0] for row in entity.related(field.name, field.role)) |
245 values = self._relation_values(form, field, entity, late) |
245 values = self._relation_values(form, field, entity, late) |
246 if values is None or values == origvalues: |
246 if values is None or values == origvalues: |
247 return # not edited / not modified / to do later |
247 return # not edited / not modified / to do later |
248 etype = entity.e_schema |
248 etype = entity.e_schema |
249 rschema = self._cw.schema.rschema(field.name) |
249 rschema = self._cw.vreg.schema.rschema(field.name) |
250 if field.role == 'subject': |
250 if field.role == 'subject': |
251 desttype = rschema.objects(etype)[0] |
251 desttype = rschema.objects(etype)[0] |
252 card = rschema.rproperty(etype, desttype, 'cardinality')[0] |
252 card = rschema.rproperty(etype, desttype, 'cardinality')[0] |
253 subjvar, objvar = 'X', 'Y' |
253 subjvar, objvar = 'X', 'Y' |
254 else: |
254 else: |