Django POST请求始终为空,但不是

时间:2018-12-28 11:21:06

标签: django django-views

我是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)

当我在POSTMAN中单击POST时,这是我的shell显示的内容: 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 :(得分:0)

您要发送的帖子很奇怪,请到这里。方法是POST,但您已在request.GET中发送了参数。