Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在django中输出cookie值_Django - Fatal编程技术网

无法在django中输出cookie值

无法在django中输出cookie值,django,Django,我的观点.py def search(request): res = HttpResponse('Setting Response'); res.set_cookie("name","abcd") return render_to_response("search.html", {"res":res}) 我的搜索.html <html> <body> <h1>{{res.COOKIES.name}}</h1> </b

我的观点.py

def search(request):
    res = HttpResponse('Setting Response');
    res.set_cookie("name","abcd")
    return render_to_response("search.html", {"res":res})
我的搜索.html

<html>
<body>
<h1>{{res.COOKIES.name}}</h1>
</body>
</html>

{{res.COOKIES.name}
甚至
{{request.COOKIES.name}
也不起作用。我无法获取值
“abcd”
它给出的值
(空字符串)


请在这方面帮助我

您应该尝试在视图中获取cookie并将其传递到模板中,或者将
请求
变量传递到模板中


另一种方法是启用,以便默认情况下模板中的
请求
变量可用。

您应该尝试在视图中获取cookie并传递模板,或者将
请求
变量传递到模板


另一种方法是启用,以便在模板中默认情况下,
请求
变量可用。

请求变量不会自动对您的视图可用

return render_to_response("search.html", {"request":request})

您的视图不能自动使用请求变量

return render_to_response("search.html", {"request":request})
试试这个:

from django.shortcuts import render
...
return render(request, "search.html", {"res":res})
因此,请求实例将在模板上可用

更新:

如果您的目标是设置cookie,然后在模板上检索cookie,则可以执行以下操作:

from django.shortcuts import render

def search(request):
    response = render(request, "search.html")
    # render function returns a HttpResponse object
    response.set_cookie("name","abcd")
    return response
然后在模板上:

{{request.COOKIES.name}

解决方案来自

尝试以下方法:

from django.shortcuts import render
...
return render(request, "search.html", {"res":res})
因此,请求实例将在模板上可用

更新:

如果您的目标是设置cookie,然后在模板上检索cookie,则可以执行以下操作:

from django.shortcuts import render

def search(request):
    response = render(request, "search.html")
    # render function returns a HttpResponse object
    response.set_cookie("name","abcd")
    return response
然后在模板上:

{{request.COOKIES.name}


解决方案来自

这是胡说八道。为什么要将HttpResponse传递到模板中?这是胡说八道。为什么要将HttpResponse传递到模板中?您的目标是什么?是否要在view.py上设置一些cookie参数,然后在模板上检索它?我的目标是在view.py中设置cookie,然后使用template在.html文件中检索它。您的目标是什么?是否要在view.py上设置一些cookie参数,然后在模板上检索它?我的目标是在view.py中设置cookie,然后使用templateThank u在.html文件中检索它。谢谢你,但这种方式也不起作用我无法获取所需值谢谢你,但这种方式也不起作用我无法获取所需值