大佬教程收集整理的这篇文章主要介绍了如何在 Django 中使用 .filter(ifsc_startswith) 获取查询集,其中 ifsc 是输入值?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
class BankVIEwSet(PaginateBymaxmixin,vIEwsets.ReadonlymodelVIEwSet):
"""
API endpoint that allows users to be vIEwed.
"""
queryset = Branches.objects.filter(ifsc__startswith='')
serializer_class = Branchserializer
pagination_class = MylimitOffsetPagination
filter_BACkends = [SearchFilter,OrderingFilter,DjangoFilterBACkend]
search_fIElds = ['ifsc','branch','city','diStrict','address','state']
filterset_fIElds =['ifsc']
ordering_fIElds = ['ifsc']
max_paginate_by = 100
我对我的 API 有这样的看法。我认为 filter(ifsc_startswith)
参数将返回从输入值开始的查询,但令我惊讶的是它没有。相反,它显示诸如 filter(ifsc_contains) 之类的结果。
如何解决这个问题?
您使用抑扬符指定搜索应查找以给定搜索值开始@H_944_17@的字符串,因此:
TypeError: Class constructor MyDataBase cAnnot be invoked without 'new'.
这在 documentation of the SearchFilter
[drf-doc] 中指定:
(…)
搜索行为可能会通过添加各种字符来限制
到class BankViewSet(PaginateBymaxmixin,viewsets.ReadOnlymodelViewSet):
# …
search_fields = ['^ifsc','branch','city','diStrict','address','state']
。
search_fields
从搜索开始。'^'
完全匹配。 '='
全文搜索。 (目前仅支持 Django 的 POSTGReSQL 后端。)'@'
正则表达式搜索。以上是大佬教程为你收集整理的如何在 Django 中使用 .filter(ifsc_startswith) 获取查询集,其中 ifsc 是输入值?全部内容,希望文章能够帮你解决如何在 Django 中使用 .filter(ifsc_startswith) 获取查询集,其中 ifsc 是输入值?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。