mirror of
https://github.com/OCA/web.git
synced 2025-02-22 13:21:25 +02:00
[14.0] web_m2x_options_manager: New module to manage create/edit options from interface
This commit is contained in:
20
web_m2x_options_manager/models/ir_ui_view.py
Normal file
20
web_m2x_options_manager/models/ir_ui_view.py
Normal 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
|
||||
Reference in New Issue
Block a user