Web Field Required Invisible Readonly Managerr

web_field_required_invisible_manager
REPOSITORY
REPOSITORYOCA/web
GIT
GIThttps://github.com/OCA/web.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/web/tree/14.0/web_field_required_invisible_manager
VERSION
VERSION 2.4.0
CATEGORY
CATEGORYWeb
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ilyas, ooops404
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ilyas, ooops404
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, Simone Rubino, oca-ci, Alessandro Uffreduzzi, Ilyas
WEBSITE
WEBSITEhttps://github.com/OCA/web
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:08
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
cfr_all_view_form custom.field.restriction.all.view.form custom.field.restriction form New
cfr_all_view_tree custom.field.restriction.all.view.tree custom.field.restriction tree New
cfr_invisible_view_tree custom.field.restriction.invisible.view.tree custom.field.restriction tree New
cfr_readonly_view_tree custom.field.restriction.readonly.view.tree custom.field.restriction tree New
cfr_required_view_tree custom.field.restriction.required.view.tree custom.field.restriction tree New
view_model_form_inherit view.model.form.inherit ir.model xpath Inherits base.view_model_form
Models touched (4)

New fields (0)

No new fields.

Public methods (1)
  • default_get(self, fields_list)

New fields (15)
  • condition_domain Char
  • default_required Boolean
    related='field_id.required' string='Required by Default'
  • field_id Many2one → ir.model.fields
    ondelete='cascade' required=True string='Field' args: 'ir.model.fields'
  • field_invisible Boolean
  • field_name Char
    related='field_id.name' store=True string='Field Name'
  • field_readonly Boolean
  • group_ids Many2many → res.groups
    required=True args: 'res.groups'
  • invisible_model_id Many2one → ir.model
    index=True ondelete='cascade' string='Model (visibility)' args: 'ir.model'
  • model_name Char
    compute='_compute_model_name' index=True store=True string='Model Name'
  • readonly_field_id Many2one → ir.model.fields
    args: 'ir.model.fields'
  • readonly_model_id Many2one → ir.model
    index=True ondelete='cascade' string='Model (readonly)' args: 'ir.model'
  • required Boolean
  • required_field_id Many2one → ir.model.fields
    args: 'ir.model.fields'
  • required_model_id Many2one → ir.model
    index=True ondelete='cascade' string='Model (required)' args: 'ir.model'
  • visibility_field_id Many2one → ir.model.fields
    args: 'ir.model.fields'
Public methods (6)
  • create(self, vals)
    @api.model
  • create_restriction_field(self, f_type)
  • get_field_name(self, f_type)
  • onchange_field_id(self)
    @api.onchange('field_id')
  • unlink(self)
  • write(self, vals)

New fields (3)
  • custom_invisible_restriction_ids One2many → custom.field.restriction
    args: 'custom.field.restriction', 'invisible_model_id'
  • custom_readonly_restriction_ids One2many → custom.field.restriction
    args: 'custom.field.restriction', 'readonly_model_id'
  • custom_required_restriction_ids One2many → custom.field.restriction
    args: 'custom.field.restriction', 'required_model_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (3)
  • create_restrictions_fields(self, restrictions, view_type, arch)
  • postprocess_and_fields(self, node, model=None, validate=False)
  • process_child_fields(self, arch, new_fields, view_type)
    Collect all relational fields and update their views
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/web
PULL REQUEST
PULL REQUEST[WIP][18.0][MIG] web_field_required_invisible_manager: Migration to 18.0 (#3072)
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/web
PULL REQUEST
PULL REQUEST[15.0][MIG] web_field_required_invisible_manager: Migration to 15.0 (#3193)
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/web
PULL REQUEST
PULL REQUEST[WIP][17.0][MIG] web_field_required_invisible_manager: Migration to 17.0 (#3071)