【问题标题】:DRF SearchFilter fixed field valueDRF SearchFilter 固定字段值
【发布时间】:2017-12-15 05:11:55
【问题描述】:

您好,我想问一下 example 中的 searchfilter 类。

class UserListView(generics.ListAPIView):
    queryset = User.objects.all()
    serializer_class = UserSerializer
    filter_backends = (filters.SearchFilter,)
    search_fields = ('username', 'email')

这将允许客户端通过以下查询过滤列表中的项目:

http://example.com/api/users?search=russell

现在我想要做的是,例如添加一个gender 字段到User 对象并搜索过滤它返回查询集中的所有男性。

应该是这样的search_fields = ('username', 'email', 'gender="male"') # of course this wont work

我们如何在 searchFilter 中获得这个东西?

【问题讨论】:

    标签: django django-rest-framework django-filter


    【解决方案1】:

    我认为您应该使用 filter_fields 而不是搜索字段。

    class UserListView(generics.ListAPIView):
        queryset = User.objects.all()
        serializer_class = UserSerializer
        filter_backends = (filters.SearchFilter,filters.DjangoFilterBackend)
        search_fields = ('username', 'email')
        filter_fields = ('gender',)
    

    网址: http://example.com/api/users?gender=male&&search=russell

    【讨论】:

      猜你喜欢
      • 2022-06-18
      • 2020-11-03
      • 2018-03-18
      • 2022-09-27
      • 2022-08-17
      • 2016-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多