Это можно сделать, вставив условное CSS.
Frist и добавьте поле html с параметром sanitize, установленным в False:
x_css = fields.Html(
string='CSS',
sanitize=False,
compute='_compute_css',
store=False,
)
Затем добавьте метод вычисления с вашим собственные зависимости и условия:
# Modify the "depends"
@api.depends('state_str_modify_me')
def _compute_css(self):
for application in self:
# Modify below condition
if application.state_str_modify_me= 'In Progress':
application.x_css = '<style>.o_form_button_edit {display: none !important;}</style>'
else:
application.x_css = False
Наконец добавьте его в представление:
<field name="x_css" invisible="1"/>