콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
3 답글
13765 화면

I'm trying to port form odoo 13 to 16. I have two fields: A, B

In my form view, A has attribute: "attrs ({'readonly': [('report_done', '=', True)]})"

And B is restricted to groups="account.group_account_manager"


When I install the module, it keeps saying this:

Error while validating view near: 

Field 'B' used in attrs ({'readonly': [('B', '=', True)]}) is restricted to the group(s) account.group_account_manager.



Is there something wrong in Odoo16?

Or am I missing something else?  

아바타
취소

Don't have enough karma to upvote the answer. The solution in my case was to add the field set as invisible (it already was on the form but was only accesible to the specific user group). 

베스트 답변
def _compute_my_field_readonly(self):
return not (
self.user.has_group("my_module.group_1")
or self.user.has_group("my_module.group_2")
)

my_field = fields.Float(
readonly=_compute_my_field_readonly,
)
아바타
취소
베스트 답변

Hi @dimitry

Hope you are doing well.

Here in odoo 16 what happens is that in the field 'B' you have given the group and when you are trying to use this field in another field as an attribute "Field 'B' used in attrs ({'readonly': [('B', '=', True)]})" it is getting restricted due to the applied group. 

Hence you can either move the group from the field or add the same field where its is being used as attribute as invisible.


I hope it will help you.

Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari

아바타
취소
베스트 답변

Hi,

Create a group and add the attribute to the field that you want to make as read only as below.

<field name="example_field" attrs="{'readonly': [('groups', 'in', [example_group])]}"/>


Regards

아바타
취소

I tried this solution but it gave me this error:
Field 'groups' used in attrs ({'readonly': [('groups', 'in', [example_group])]}) must be present in view but is missing.

관련 게시물 답글 화면 활동
2
9월 15
4378
1
4월 23
227
1
5월 23
4129
3
12월 23
91281
3
9월 21
5266