2012-05-02 2 views
0

auth_user_user_permissions (manyTomany)를 사용하여 auth_user (기본 테이블)에 가입하여 모든 permission_id를 나열하려고합니다. 나는 분류django orm에서 많은 관계 테이블의 데이터를 가져 오는 방법

PER = ((item.permission_id) 목록에있는 항목에 대한 (User.objects.filter (user_permissions__user = 2)))

그것은 permission_id '개체가 어떤 속성이없는'사용자 '를 말하고 다음 시도했다.

답변

0

User.objects.filter(...)가 사용자의 검색어 도착 안내하시기 바랍니다. 따라서 항목은 User() 인스턴스입니다. 해당 항목의 허가에 직접 액세스하려면 item.user_permissions.all(). 따라서 귀하의 경우

User(pk=2).user_permissions.values_list('pk', flat=True).order_by('pk') 
# or 
[x.pk for x in Permission.objects.filter(user=2).order_by('pk')] 

참고 문헌 이상 the doc인치

0

권한 ID가 필요한 경우 권한 테이블을 직접 쿼리 할 수 ​​있습니다.

permission_ids = Permission.objects.filter(user=2).values_list('id', flat=True) 
관련 문제