프로파일이라는 각 사용자 프로파일의 사용자 정의 필드로 사용자를 필터링하려고합니다. 이 필드는 레벨이라고하며 0-3 사이의 정수입니다.
equals를 사용하여 필터링하면 예상대로 선택한 수준의 사용자 목록이 표시됩니다.
user_list = User.objects.filter(userprofile__level = 0)
미만을 사용하여 필터링하려고 할 때 :
user_list = User.objects.filter(userprofile__level < 3)
오류가 발생합니다.
글로벌 이름 ‘userprofile__level’이 정의되지 않았습니다
<또는>로 필터링하는 방법이 있습니까, 아니면 잘못된 트리를 짖고 있습니까?
답변
작거나 같음 :
User.objects.filter(userprofile__level__lte=0)
크거나 같음 :
User.objects.filter(userprofile__level__gte=0)
마찬가지로 lt
보다 작거나 gt
크다. 문서에서 모두 찾을 수 있습니다 .