2015-07-10 85 views
2

我想要查询的SQL像这样在Django查询凡在Django

select auth_group.name auth_user.username 
from auth_group, auth_user, auth_user_groups 
where auth_user.id = auth_user_groups.id AND auth_group.id = auth_group.id AND auth_group.name = "Operator"; 

表:

auth_user -> id, username 

auth_group -> id, name 

auth_user_groups -> id, user_id, group_id 

和我尝试查询在Django这样

p = User.objects.all().prefetch_related('groups').get(groups='Operator') 

但错误ValueError: invalid literal for int() with base 10: 'Operator'

你可以帮我解决这个问题`

回答

2

变化

get(groups='Operator') 

get(groups__name='Operator') 

你可以得到一些结果,因此你应该做的:

filter(groups__name='Operator') 
+0

好,谢谢工作:) – User0511