[14.0] web_m2x_options_manager: New module to manage create/edit options from interface

This commit is contained in:
SilvioC2C
2021-08-02 16:27:15 +02:00
committed by Germana
parent e7aa0e1bf9
commit 4378fe8cfc
15 changed files with 469 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
# Copyright 2021 Camptocamp SA
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import models
class IrUiView(models.Model):
_inherit = "ir.ui.view"
def postprocess(self, node, current_node_path, editable, name_manager):
res = super().postprocess(node, current_node_path, editable, name_manager)
if node.tag == "field":
mname = name_manager.Model._name
fname = node.attrib["name"]
field = self.env[mname]._fields.get(fname)
if field and field.type in ("many2many", "many2one"):
rec = self.env["m2x.create.edit.option"].get(mname, field.name)
if rec:
rec._apply_options(node)
return res