Django POST-запрос всегда пуст, но это не так - PullRequest
0 голосов
/ 28 декабря 2018

Я нуб с Django.

Я пытаюсь отобразить содержимое запроса POST, но у меня ничего не получается.Я использую POSTMAN для создания запроса POST.

Это мой взгляд на Django:

@csrf_exempt
def prem(request):

    if request.method == 'GET':
        print("GET")
        context = {'contenu': request.GET.get("name") }
        # do_something()
    elif request.method == 'POST':
        datar = request.POST.get('mykey','rien')
        context = { 'contenu' : datar }

    return render(request, 'polls/seco.html', context)

Когда я нажимаю POST в POSTMAN, это то, что отображает моя оболочка: enter image description here

Итак, мое веб-приложение получает запрос POST, но я не могу получить его содержимое.

This my template :
{% if contenu %}
    {% csrf_token %}
    <p>{{ contenu }}</p>
    <p>Contenu detecté.</p>
{% endif %}

Вот что показывает POSTMAN: enter image description here

Если бы кто-то мог мне помочь, это было бы действительно здорово!:)

РЕДАКТИРОВАТЬ

Спасибо, ребята, что помогли мне.Для таких нубов, как я, ниже работает код:

def prem(request):

    if request.method == 'GET':
        print("GET")
        context = {'contenu': request.GET.get("name") }
        # do_something()
    elif request.method == 'POST':
        datar = request.GET.get('mykey','rien') ### <------ HERE the mistake removed
        context = { 'contenu' : datar }

    return render(request, 'polls/seco.html', context)

1 Ответ

0 голосов
/ 28 декабря 2018

Вы отправляете странную смесь сообщений и попадаете сюда.Метод POST, но вы отправили параметры в request.GET.

...