Я создаю простой API и пытаюсь проверить POST-запрос. Запрос на публикацию должен создать новую запись, основанную только на одном параметре: title.
Я использую тест manage.py и настроил клиент:
client = rest_framework.test.APIClient()
Проблема: она работает нормально, когда я даю URL вручную («фрагмент» - это название фильма).
response = client.post('/movies/?title=snatch', format='json')
В этом случае я могу получить доступ к заголовку в моем представлении request.query_params.get ('title') и request.data.get ('title').
Но когда я пытаюсь передать заголовок в аргументе data:
response = client.post('/movies/', data={'title':'snatch'}, format='json')
Это должно иметь доступ к '/ movies /? Title = snatch', но вместо этого имеет доступ только к '/ movies /'.
Я могу получить доступ к заголовку через request.data.get ('title'), но не через request.query_params.get ('title').
Как получить доступ к параметрам, отправленным в POST-запросе? Правильный ли доступ через request.data?
Может кто-нибудь дать мне лучшее объяснение различий и вариантов использования?