跳至内容
菜单
此问题已终结
2 回复
3476 查看

Hi,

I want to hide edit button, when state changed to done(without putting attrs in each field) 


形象
丢弃
编写者

hii, Sylvain Michel Ratsarafahatra

Thanks for your response, i already try that solution but it's not working for me

最佳答案

Hi,

I suggest you to do like the bellow code by creating a computed field, adapt it as you need.

# Hide edit button
edit_hide_css = fields.Html(string='CSS', sanitize=False, compute='_compute_edit_hide_css')

@api.depends('state')
def _compute_edit_hide_css(self):
for rec in self:
if rec.state in ['done']:
rec.edit_hide_css = '<style>.o_form_button_edit {display: none !important;}</style>'
else:
rec.edit_hide_css = False

Best regards!

形象
丢弃

that does not prevent a user from re-activating the button with the browser inspector; It should be recommended for permissions.

最佳答案

Have a look at this module https://odoo-community.org/shop/product/web-action-conditionable-2608#attr=8636, you can set the attribute `edit` base on the value of a field

形象
丢弃
相关帖文 回复 查看 活动
3
9月 25
3183
0
8月 25
745
1
8月 25
2943
2
7月 25
8576
2
7月 25
4980