İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
8598 Görünümler

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';
Avatar
Vazgeç
En İyi Yanıt

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.

Avatar
Vazgeç

Do you mean that?

if POS_Managers_groups = POS_Managers:

managers = true

else

managers = false

İlgili Gönderiler Cevaplar Görünümler Aktivite
3
Eyl 22
17880
2
Haz 22
3088
1
Eki 18
5684
5
Ağu 18
4469
0
Nis 15
3474