我刚刚开始研究我的第一个大型Django项目,我目前正在使用几个API进行编程,并且使用Python'requests'库向下面的视图发出请求:
@api_view(['GET', 'POST'])
def s0003_view(request):
p = request.POST
print(p)
obj = p.get('jsonobj')
print(obj)
QueryDict对象位于'p'如下:
<QueryDict: {'jsonobj': ['register_id', 'meter_id', 'id', 'reading_date', 'reading_value', 'meter_point_number', 'pattern', 'reading_method']}>
然而,一旦我使用p.get()访问'jsonobj'并打印其内容,它只返回列表中的最后一项:
reading_method
为什么会这样? 我真的很难过,所以任何帮助都会非常感激!
答案 0 :(得分:1)
根据Django的官方文档,在QueryDict对象中,有两种获取值的方法:get(key)
和__getitem__(key)
。
当您调用其中一个方法来获取键的值时,如果该键包含多个值,则将返回最后一个值。
查看文档以获取更多信息https://docs.djangoproject.com/en/2.0/ref/request-response/#django.http.QueryDict