2016-12-17 1 views
2

Django 1.10django-rest-framework 3.5.3을 사용 중입니다. 일반 검색 쿼리를 사용하고 싶습니다. 많은 필드에서 값을 검색하십시오. 문서에서 SearchFilter을 찾았습니다.장고 REST - 검색 필터가 필터링되지 않음

필터 백엔드를 ViewSet에 추가하려고 시도했지만 작동하지 않는 것 같습니다. 모든 개체에 대한 검색 쿼리 응답입니다.

뷰셋 :

from rest_framework import filters 

class UserViewSet(viewsets.ModelViewSet): 
    queryset = User.objects.all().order_by('-date_joined') 
    serializer_class = UserSerializer 
    filter_backends = (filters.SearchFilter,) 
    filter_fields = ['username', 'email', 'is_staff', 'groups'] 

쿼리 URL : 또한

http://localhost:8000/users/?search=something 

는 문서에서 그들은 새로운 버튼 "필터"장고 나머지 웹 페이지에 추가 것을 보여준다. 내 경우 엔 그렇지 않아.

이 나는 ​​뭔가를 놓치고 있습니까?

감사합니다.

답변

5

filter_fields 대신 search_fields을 사용하십시오. filter_fields/users/?username=something&is_staff=True과 같이 특정 입력란에서 필터링을 사용하도록 설정하는 것입니다.

관련 문제