Python Django REST Framework-仅在request.get_参数中显示第一个查询参数

Python Django REST Framework-仅在request.get_参数中显示第一个查询参数,python,django,api,django-rest-framework,Python,Django,Api,Django Rest Framework,我想使用多个查询参数筛选视图中的查询集,但“request.query_params”只能获取查询字符串中的第一个查询参数 这是我的URLConf: urlpatterns = [ ... re_path(r'^descsearch/$', views.DescriptionSearchView.as_view(), name='descsearch'), ] 下面是我的视图顶部,我试图从查询字符串(“description”和“descSearchMethod”)中获取两个查询参

我想使用多个查询参数筛选视图中的查询集,但“request.query_params”只能获取查询字符串中的第一个查询参数

这是我的URLConf:

urlpatterns = [
   ...
   re_path(r'^descsearch/$', views.DescriptionSearchView.as_view(), name='descsearch'),
]
下面是我的视图顶部,我试图从查询字符串(“description”和“descSearchMethod”)中获取两个查询参数:

当我使用curl发出此GET请求时:

curl -X GET http://127.0.0.1:8000/api/descsearch/?description=O-RING&descSearchMethod=and
Django控制台中的print语句显示QueryDict中只有第一个查询参数“description”

request.query_params: <QueryDict: {'description': ['O-RING']}>
description: O-RING
Internal Server Error: /api/descsearch/
...
request.query\u参数:
说明:O形圈
内部服务器错误:/api/descsearch/
...
如果我切换顺序,使“descSearchMethod”成为第一个查询参数,则只显示它


为什么QueryDict中只显示第一个查询参数?

我猜出来了!我只需要在curl命令中的URL周围添加引号,如下所示:

curl -X GET 'http://127.0.0.1:8000/api/descsearch/?description=O-RING&descSearchMethod=and'

我正在Windows上的Git Bash中发出curl命令。

您能打印
self.request.GET
curl -X GET 'http://127.0.0.1:8000/api/descsearch/?description=O-RING&descSearchMethod=and'