diff --git a/bin/osv/orm.py b/bin/osv/orm.py index 38c1c20d8ea..e8fba2dbe0c 100644 --- a/bin/osv/orm.py +++ b/bin/osv/orm.py @@ -380,6 +380,7 @@ class orm_template(object): 'select_level': tools.ustr(f.select or 0), 'readonly':(f.readonly and 1) or 0, 'required':(f.required and 1) or 0, + 'relation_field': f._type=='one2many' and f._fields_id or '', } # When its a custom field,it does not contain f.select if context.get('field_state','base') == 'manual': @@ -395,13 +396,13 @@ class orm_template(object): vals['id'] = id cr.execute("""INSERT INTO ir_model_fields ( id, model_id, model, name, field_description, ttype, - relation,view_load,state,select_level + relation,view_load,state,select_level,relation_field ) VALUES ( - %s,%s,%s,%s,%s,%s,%s,%s,%s,%s + %s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s )""", ( id, vals['model_id'], vals['model'], vals['name'], vals['field_description'], vals['ttype'], vals['relation'], bool(vals['view_load']), 'base', - vals['select_level'] + vals['select_level'],vals['relation_field'] )) if 'module' in context: name1 = 'field_' + self._table + '_' + k @@ -418,12 +419,12 @@ class orm_template(object): cr.commit() cr.execute("""UPDATE ir_model_fields SET model_id=%s, field_description=%s, ttype=%s, relation=%s, - view_load=%s, select_level=%s, readonly=%s ,required=%s + view_load=%s, select_level=%s, readonly=%s ,required=%s ,relation_field=%s WHERE model=%s AND name=%s""", ( vals['model_id'], vals['field_description'], vals['ttype'], vals['relation'], bool(vals['view_load']), - vals['select_level'], bool(vals['readonly']),bool(vals['required']), vals['model'], vals['name'] + vals['select_level'], bool(vals['readonly']),bool(vals['required']), vals['relation_field'], vals['model'], vals['name'] )) continue cr.commit()