gpt4 book ai didi

django - django如何在基于类的 View 中获取响应

转载 作者:行者123 更新时间:2023-12-04 17:35:57 25 4
gpt4 key购买 nike

现在我有一个基于类的 View 。我想在此 View 中设置cookie,但是我可以获取响应,但是响应在get methond中返回。所以我无法将cookie设置为response.so如何在基于类的 View 中获取Response

 class MyView(TemplateView):
def get_context_data(self, **kwargs):
context = super(UBaseTemplateView, self).get_context_data(**kwargs)

#in here set cookie,but can get the response
#response.set_cookie("success","success")

return context

最佳答案

您不能在request上设置set_cookie,而只能在response上设置set_cookie,但是burhan-khalid的方向正确。 get_context_data仅返回字典,因此您无法在其中访问响应。您必须以dispatchTemplateViewrender_to_response来访问它。这是一个例子:

class MyView(TemplateView):
def render_to_response(self, context, **response_kwargs):
response = super(MyView, self).render_to_response(context, **response_kwargs)
response.set_cookie("success","success")
return response

我建议您不要在 get_context_data中完成所有处理代码。您可能需要重构以获得要在 render_to_response中设置的cookie。

关于django - django如何在基于类的 View 中获取响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18875803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com