【问题标题】:DRF (ListAPIView) - how to apply search filter in querysetDRF (ListAPIView) - 如何在查询集中应用搜索过滤器
【发布时间】:2021-08-10 11:55:28
【问题描述】:

如果用户输入内容,我想获取结果

示例 - 如果用户在搜索框中输入“Hello World”,那么它应该只通过 DRF ListView 获取“Hello World”。

Views.Py

class FunderViewSet(generics.ListAPIView):
  
    serializer_class = FunderSerializer
   
    def get_queryset(self):
        queryset = Funder.objects.all()
        name = self.request.query_params.get('term')
        if name is not None:
            queryset = queryset.filter(Funder_name=name)
        return queryset

URLS.py

path(
    'funder/<term>',
    funder.FunderViewSet.as_view(),
    name='funder-lookup'
),

【问题讨论】:

    标签: django-rest-framework drf-queryset


    【解决方案1】:

    您可以使用查找进行搜索。

    def get_queryset(self):
        queryset = Funder.objects.all()
        name = self.request.query_params.get('term')
        if name is not None:
            queryset = queryset.filter(Funder_name__exact=name)
        return queryset
    

    更多示例,您可以阅读docs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多