Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
2 Odpovědi
2088 Zobrazení
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 ?



Avatar
Zrušit
Autor Nejlepší odpověď

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.

Avatar
Zrušit
Nejlepší odpověď

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

Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
1
dub 24
1103
0
pro 23
1098
1
dub 23
1681
1
kvě 25
1564
1
dub 25
2730