刷新带有帖子请求的页面 - > csrf失败了

时间:2014-01-13 18:44:53

标签: django csrf

我尝试在网站上登录

@csrf_protect
def home(request):

    if request.POST :
        username = request.POST['username']
        password = request.POST['password']
        user = authenticate(username=username, password=password)
        if user:
            if user.is_active:
                login(request, user)

    return render(request,'base.html',{})

当我提交表单时,没关系 - 用户登录,但如果我在此之后刷新此页面 - csrf失败。 我的问题是什么?

1 个答案:

答案 0 :(得分:2)

您应该在登录后重定向:

from django.shortcuts import redirect

#...
if user:
    if user.is_active:
        login(request, user)
        return redirect('home')
#...

其中home是网址名称,有关如何使用它的详细信息,请参阅redirect文档。