Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
2 Trả lời
2449 Lượt xem
Bonjour à tous. J'ai voulu ajouter ces champs là dans le formulaire du modèle digest.digest :

currency_id = fields.Many2one(related="company_id.currency_id", string='Currency', readonly=False)
company_id = fields.Many2one('res.company', string='Company', default=lambda self: self.env.company.id)

Maintenant je veux relier ces deux champs de sorte que les propositions pour le deuxième champs soit filtrées par rapport à la valeur choisie dans le premier champs.

Quelqu'un peut-il m'aider ?



Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

Merci pour votre réponse si rapide. J'en suis honoré

voilà ce que j'ai essayer de faire en me basant sur votre solution :

models_choice = fields.Many2many('ir.model', string='Models', required=True)
fields_choice = fields.Many2many('ir.model.fields', string='Fields', required=True, domain="[('name', 'in', models_choice)]")

finalement ça lie les deux champs puisque j'ai besoin de selectionner une valeur pour models_choice avant que les propositions  pour fields_choice ne s'affichent. Mais ça ne ressous pas mon problème. puisque ir.model est l'ensemble de tout les modèles, models_choice affiche un tableau les contenant. de même pour l'autre qui est les tableau contenant l'ensemble des champs de tout les modèles. Ce que je veux, c'est de n'avoir que pour propositions, les champs du modèle choisi dans le premier field.

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi,

You can try adding a domain to the second field and will be filtered based on the selected value.

currency_id = fields.Many2one('res.currency', string='Currency', related='company_id.currency_id', readonly=False)
company_id = fields.Many2one('res.company', string='Company', default=lambda self: self.env.company.id, domain="[('currency_id', '=', currency_id)]")

Thanks

Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
1
thg 4 24
1393
0
thg 12 23
1428
1
thg 4 23
1954
1
thg 5 25
2441
1
thg 4 25
3463