class Rent(APIVIEw): """ List all the rents if token is not provIDed else a token specific rent """ serializer_class = RentSerializer filter_backends = (DjangoFilterBackend,) filter_fIElds = ('city','place','property_category',) search_fIElds = ('=city','=place') def get(self,request,token=None,format=None): reply={} try: rents = Rental.objects.all() if token: rent = Rental.objects.get(token=token) reply['data'] = self.serializer_class(rent).data else: reply['data'] = self.serializer_class(rents,many=True).data except Rental.DoesNotExist: return error.RequestedResourceNotFound().as_response() except: return error.UnkNownError().as_response() else: return Response(reply,status.http_200_OK)
当我在网址中使用以下参数搜索租金时,我得到所有的租金,而我应该只获得位于加德满都市的租金并放置koteshwor
http://localhost:8000/api/v1/rents?city=Kathmandu&place=Koteshwor
解决方法 这里如果您正在使用APIVIEw,那么与过滤器无关.所以你必须这样做get_data = request.query_params #or request.GET check both
然后
Rental.objects.filter(city=get_data['city'],place=get_data['place'])总结
以上是内存溢出为你收集整理的python – 关于APIView的django过滤器全部内容,希望文章能够帮你解决python – 关于APIView的django过滤器所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)