Python 如何使用django rest framework搜索过滤器执行or操作,而不是对查询参数执行and操作

Python 如何使用django rest framework搜索过滤器执行or操作,而不是对查询参数执行and操作,python,django-models,django-rest-framework,django-views,django-filter,Python,Django Models,Django Rest Framework,Django Views,Django Filter,这是我的密码 class op_ViewSet(viewsets.ModelViewSet) : http_method_names = ['get'] queryset = Op.objects.all().filter() serializer_class = op_Serializer pagination_class = MyPagination filter_backends = [DjangoFilterBackend , SearchFilt

这是我的密码

class op_ViewSet(viewsets.ModelViewSet) :
    http_method_names = ['get']
    queryset = Op.objects.all().filter()
    serializer_class = op_Serializer
    pagination_class = MyPagination
    filter_backends = [DjangoFilterBackend , SearchFilter , OrderingFilter]
    filter_class = op_filter
    search_fields = ['website' , 'title' , 'description' , 'organization__name']
搜索\字段在表格的“网站”、“标题”、“说明”和“组织”列中搜索关键字

这就是我发送邮递员请求的方式

http://127.0.0.1:8000/?search=Belgian,Services
现在,我的代码执行一个结束操作。它返回那些同时包含比利时服务关键字的行,而我希望它在我在搜索字段中提供的4列中的任意一列中返回那些只包含比利时服务关键字的行,或者同时包含这两个关键字的行

我怎样才能做到呢

非常感谢你的帮助。
我试过了,但对我不起作用

事实上,你需要某种“或”搜索过滤器(“两个”都包含在“任何字段中的比利时或(xor?)任何字段中的服务”中”)

您应该尝试进行一些小的修改:

query=query | Q(网站名称=term)| Q(标题名称=term)| Q(描述名称=term)| Q(组织名称=term)