Overslaan naar inhoud
Menu
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Deze vraag is gerapporteerd
2 Antwoorden
6886 Weergaven

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,

}


Avatar
Annuleer
Auteur Beste antwoord

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

Avatar
Annuleer
Gerelateerde posts Antwoorden Weergaven Activiteit
1
jul. 15
19872
1
feb. 24
1961
0
jul. 24
3007
0
feb. 23
2013
0
jul. 22
60