QueryDict возвращает странное значение в Django - PullRequest
0 голосов
/ 26 апреля 2018

Я только начал работать над своим первым крупномасштабным проектом Django, в настоящее время я работаю с парой API, и один из них делает запрос, используя библиотеку Python 'запросы', к следующему представлению:

@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']}>

Однако, как только я обращаюсь к jsonobj с помощью p.get () и печатаю его содержимое, он возвращает только последний элемент в списке:

reading_method 

Почему это происходит? Я искренне озадачен, поэтому любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 26 апреля 2018

Согласно официальной документации Django, в объекте QueryDict есть два метода получения значений: get(key) и __getitem__(key). при вызове одного из этих методов для получения значения ключа, если этот ключ содержит более одного значения, будет возвращено последнее значение.

Ознакомьтесь с документацией для получения дополнительной информации https://docs.djangoproject.com/en/2.0/ref/request-response/#django.http.QueryDict

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...