| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/web |
| GIT | |
| GIT | https://github.com/OCA/web.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/web/tree/14.0/web_field_required_invisible_manager |
| VERSION | |
| VERSION | 2.4.0 |
| CATEGORY | |
| CATEGORY | Web |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Ilyas, ooops404 |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Ilyas, ooops404 |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, Simone Rubino, oca-ci, Alessandro Uffreduzzi, Ilyas |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/web |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-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 | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
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 |
No new fields.
Public methods (1)default_get(self, fields_list)
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
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
required_model_id
Many2one → ir.model
index=True
ondelete='cascade'
string='Model (required)'
args: 'ir.model'
visibility_field_id
Many2one → ir.model.fields
create(self, vals)
create_restriction_field(self, f_type)
get_field_name(self, f_type)
onchange_field_id(self)
unlink(self)
write(self, vals)
custom_invisible_restriction_ids
One2many → custom.field.restriction
custom_readonly_restriction_ids
One2many → custom.field.restriction
custom_required_restriction_ids
One2many → custom.field.restriction
No public methods.
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)
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/web |
| PULL REQUEST | |
| PULL REQUEST | [WIP][18.0][MIG] web_field_required_invisible_manager: Migration to 18.0 (#3072) |
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/web |
| PULL REQUEST | |
| PULL REQUEST | [15.0][MIG] web_field_required_invisible_manager: Migration to 15.0 (#3193) |
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/web |
| PULL REQUEST | |
| PULL REQUEST | [WIP][17.0][MIG] web_field_required_invisible_manager: Migration to 17.0 (#3071) |