Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django rest框架-如何进行不区分大小写的视图集搜索_Python_Django_Django Rest Framework - Fatal编程技术网

Python Django rest框架-如何进行不区分大小写的视图集搜索

Python Django rest框架-如何进行不区分大小写的视图集搜索,python,django,django-rest-framework,Python,Django,Django Rest Framework,如何在rest框架的视图集中启用不区分大小写的搜索 例如,假设Post模型有一个标记。下面的所有链接都应该找到相同的标记内容,现在它们区分大小写,并尝试搜索不同的值: /posts/tag=AbcDef /posts/tag=abcdef /posts/tag=AbcdeF 视图.py class PostViewSet(viewsets.ReadOnlyModelViewSet): queryset = Post.objects.all() serializer_class =

如何在rest框架的视图集中启用不区分大小写的搜索

例如,假设Post模型有一个标记。下面的所有链接都应该找到相同的标记内容,现在它们区分大小写,并尝试搜索不同的值:

  • /posts/tag=AbcDef
  • /posts/tag=abcdef
  • /posts/tag=AbcdeF
  • 视图.py

    class PostViewSet(viewsets.ReadOnlyModelViewSet):
        queryset = Post.objects.all()
        serializer_class = PostSerializer
    

    假设您在Post模型中有名为tag的字段,并且您的搜索url的形式如下:

    /posts/?tag=AbcDef
    
    您可以执行区分大小写的搜索,如:

    class PostViewSet(viewsets.ReadOnlyModelViewSet): 
        serializer_class = PostSerializer
    
        def get_queryset(self):
            keyword = self.request.query_params.get('tag', '')
            queryset = Post.objects.filter(tag__iexact=keyword)
            return queryset
    

    你考虑过使用吗?默认情况下,不区分大小写。

    可以显示您的<代码> URL.Py < /C> >吗?您可以考虑对该列使用不区分大小写的数据类型,如“代码> CITEX。