コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
6885 ビュー

I have two models. 1.chercheurs  2. structures

i have chercheurs -> many2many -> structures

for example i have selected  structures structures1, structures2 in chercheurs form. The name of the chercheurs is "ch1".

This "ch1" i want to show in structures1, structures2 form, tree view.

if structures1 is selected in more chercheurs called "ch2", "ch3" then these all chercheurs should show in structures1 form, tree view.

Which field in the odoo can help me?. Here is my two models.


class chercheurs(osv.osv):

_name='chercheurs'

_columns={

'code':fields.integer('id'),

'name':fields.char('name'),

'email':fields.char('email'),

'phone':fields.char('phone'),

'function':fields.char('function'),

'responsible':fields.many2one('res.users',string='responsible'),

'active':fields.boolean('active'),

'structures_ids':fields.many2many('structures','structures_rel',string='Structures'),

'publication_ids':fields.many2many('publication', 'chercheurs_publication_rel', string='publications'),

}

_defaults={

'active':True,

}


## structures model ###


class structures(osv.osv):

_name='structures'

 

_columns={

'code':fields.integer('id'),

'name':fields.char('name'),

'establishment_id':fields.many2one('establishment',string='establishment'),

'type_id':fields.many2one('type',string="type"),

'active':fields.boolean('active'),

}

_defaults={

'active':True,

}


アバター
破棄
著作者 最善の回答

Solved this with fuction field in structures. 'chercheurs_id1':fields.function(_get_chercheurs_ids, type='many2many', relation="chercheurs", string="chercheurs"), def _get_chercheurs_ids(self, cr, uid, ids,field_name, arg, context=None): result = {} for record in self.browse(cr, uid, ids, context=context): result[record.id] = [] cr.execute('select chercheurs_id from structures_rel where structures_id=%s'%(record.id,)) res=cr.fetchall() if len(res)>0: result[record.id] = [x[0] for x in res] return result

アバター
破棄
関連投稿 返信 ビュー 活動
1
7月 15
19871
1
2月 24
1961
0
7月 24
3006
0
2月 23
2012
0
7月 22
60