Django APIClient Post Пусто

Я пишу тест для просмотра сообщений. Это работает, но когда я пытаюсь опубликовать его с помощью APIClient.post, я получаю QueryDict: {}. Вот тест:

class SMSCreateData(APITestCase):
...
    def test_SMS(self):
        ...
        postData = {'Body': string, 'From': phNum.phone_number}
        self.client.post(reverse('SMS-data'), postData)

И вот мнение:

def SMSSubmitDataPointView(request):
...
    try:
        print request.POST
...

1 ответ

Решение

urlencode ваши данные поста и установите для content_type значение application/x-www-form-urlencoded,

import urllib


response = self.client.post(reverse('SMS-data'), urllib.urlencode(postData),
    content_type='application/x-www-form-urlencoded'
)

Вы получите данные в request.POST

Другие вопросы по тегам