django-granular-permissions (http://code.google.com/p/django-granular-permissions/)라는 행 수준 권한 모델을 사용하고 있습니다. 권한 모델에는 단순히 컨텐트 유형과 객체 ID 인 두 개의 필드가 더 있습니다.사용자 정의 선택 필드가 포함 된 Django 모델 쿼리
User.objects.filter(Q(row_permission_set__name='staff') | \
Q(row_permission_set__name='student'), \
row_permission_set__object_id=labsite.id)
가 나는 결과를 가져올 때 매번 쿼리하지 않고 결과 집합에 is_staff
및 is_student
부울 필드를 추가 할 :
나는 다음과 같은 쿼리를 사용했습니다.
장고 문서는 쿼리 세트의 extra() 메소드를 보여 주지만이 관계로 일반 SQL 선택 쿼리를 작성해야하는 이유를 알 수 없습니다.
어떻게 하시겠습니까?
을 : 당신이 할 수있는 것은 주변의 쿼리를 켭니다? 성능 문제가 있습니까? –
아니요, 위의 쿼리는 완전히 ok입니다. 하지만 내가 원했던 것은'is_staff'와'is_boolean' 추가 필드를 결과 집합 객체에 추가하는 것이 었습니다. – Achimnol