Тестовый клиент Django сжимает вложенный JSON

У меня проблема, очень похожая на Странное поведение Django Querydict: объединяет словарь POST в один ключ и Модульное тестирование Django JSON Посмотреть. Однако ни один из вопросов/ответов в этих темах на самом деле не указывает на конкретную проблему, с которой я столкнулся. Я пытаюсь использовать тестовый клиент Django для отправки запроса с вложенным объектом JSON (то, что у меня есть, хорошо работает с объектами JSON со значениями, отличными от JSON).

Попытка №1:Вот мой первоначальный код:

    response = c.post('/verifyNewMobileUser/', 
        {'phoneNumber': user.get_profile().phone_number,
         'pinNumber': user.get_profile().pin,
         'deviceInfo': {'deviceID': '68753A44-4D6F-1226-9C60-0050E4C00067', 'deviceType': 'I'}})

Как видите, у меня есть вложенный объект JSON в данные моего запроса. Однако вот как выглядит request.POST:


Попытка № 2: Затем я попытался добавить параметр типа содержимого следующим образом:

response = c.post('/verifyNewMobileUser/', 
    {'phoneNumber': user.get_profile().phone_number,
     'pinNumber': user.get_profile().pin,
     'deviceInfo': {'deviceID': '68753A44-4D6F-1226-9C60-0050E4C00067', 'deviceType': 'I'}},
    'application/json')

И теперь я получаю для request.POST


. ] Все, что я хочу сделать, это иметь возможность указать вложенный словарь для данных моего запроса. Есть ли простой способ сделать это?

7
задан Community 23 May 2017 в 11:59
поделиться