Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
1 Odpowiedz
8594 Widoki

While working on mobile application we need to check if the user is in Manager group for a particular module. Using SQL we are able to check this condition, but can we accomplish the same using ORM? Please assist.

Following is my sql query which is listing the users who are Managers for 'Point of sale' module: Can we write an equivalent using ORM?

select login, usr.id as user_id, grp.id group_id, grp.name, cat.name 
from res_users usr, res_groups_users_rel rel, res_groups grp, ir_module_category cat
where usr.id = rel.uid
and rel.gid = grp.id
and grp.category_id = cat.id
and cat.name = 'Point of Sale'
and grp.name = 'Manager';
Awatar
Odrzuć
Najlepsza odpowiedź

Hi,

you can make search with domain as like below to manage according to your query. 

1) Find out Manager group and then after you can get all users using "users" field of "res.group".

POS_Manager_groups = self.env['res.groups'].search( [ ('name','=','Manager'), ('category_id.name','=','Point of Sale') ] )

2) You can get all users with the help of following search.

POS_Managers = self.env['res.users'].serach( [ ('groups_id.name','=','Manager'), ('groups_id.category_id.name','=','Point of Sale') ] )

I hope you will get your desire result.

Awatar
Odrzuć

Do you mean that?

if POS_Managers_groups = POS_Managers:

managers = true

else

managers = false

Powiązane posty Odpowiedzi Widoki Czynność
3
wrz 22
17874
2
cze 22
3088
1
paź 18
5684
5
sie 18
4453
0
kwi 15
3472