查询Django模型时遇字段解析错误,如何解决?
问题解决:Django查询字段解析错误
错误原因很直接:你用的username_contains不符合Django ORM的查询语法规则。
Django ORM中,要实现字段的包含匹配模糊查询,需要用双下划线连接字段名和查询操作符,正确的写法是username__contains。
修正后的代码如下:
@api_view(['GET']) def endpoints_list(request): query = request.GET.get('query', '') # 直接给默认值简化代码逻辑 print(query) adv_data = Advocate.objects.filter(username__contains=query) serializer = AdvocateSerializer(adv_data, many=True) return Response(serializer.data)
额外补充:如果需要忽略大小写的模糊匹配,可以用username__icontains替代username__contains。
内容的提问来源于stack exchange,提问作者Darshan Pahilwani
相关产品推荐
相关产品推荐

