set_cookie() 缺少 1 个必需的位置参数:'self'

set_cookie() missing 1 required positional argument: 'self'

在 Django 中,我尝试使用以下代码同时呈现模板和发送 cookie:

template = loader.get_template('list.html')
context = {'documents': documents, 'form': form}

if ('user') not in request.COOKIES:
    id_user =  ''.join(random.SystemRandom().choice(string.ascii_uppercase + string.ascii_lowercase + string.digits) for _ in range(30))
    HttpResponse.set_cookie(key='user', value=id_user, max_age=63072000)

return HttpResponse(template.render(context, request))

但我收到错误:

TypeError at /myapp/list/

set_cookie() missing 1 required positional argument: 'self'

我已经检查了 documentation,但我没有找到解决方案。 请帮助我:)

关闭 - HttpResponse 是 class,而不是 class 的实例。最后一行是创建一个并返回它 - 所以你前面的行需要对该实例进行操作...

尝试(未经测试的代码):

myResponse = HttpResponse(template.render(context, request))
myResponse.set_cookie(...)
return myResponse
def setcookie(request):
    html=HttpResponse( '<h1>Salom Django</h1>')
    html.set_cookie(key='user',value='Hello,you just configured your first Cookie',max_age=None)
    return html