Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.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 request.user在从其他视图访问时变得匿名_Django_Request - Fatal编程技术网

Django request.user在从其他视图访问时变得匿名

Django request.user在从其他视图访问时变得匿名,django,request,Django,Request,我在此视图中对用户进行身份验证: def note_edit_auth(request): if request.method == 'POST': form = EditAuthForm(request.POST) if form.is_valid(): email = form.cleaned_data['email']

我在此视图中对用户进行身份验证:

def note_edit_auth(request):
        if request.method == 'POST':
                form = EditAuthForm(request.POST)
                if form.is_valid():
                        email = form.cleaned_data['email']
                        password = form.cleaned_data['password']
                        user = auth.authenticate(username = email, password = password)

                        if user and user.is_authenticated():
                                request.session['email'] = email
                                request.session['password'] = password
                                request.session['user'] = user
                                return HttpResponseRedirect('/note_edit')
                        else:
                                return HttpResponse('User or password is either incorrect or does not exist.')
它是有效的<代码>用户确实经过身份验证。然后我尝试从另一个视图访问
request.user
,上面的视图重定向到这样的视图:

def note_edit(request):
        if request.method == 'POST' and request.user.is_authenticated():
                form_edit = EditForm(request.POST)
                user = request.session['email']
                auth.logout(request)
                return HttpResponse('Done!')
        elif request.method == 'GET' and request.user.is_authenticated():
                form_edit = EditForm(irrelevantfoofoo)
        else:
                return HttpResponse('User not authenticated.')
        return render_to_response('editnote.htm', {'form': form_edit}, context_instance = RequestContext(request))
突然,我得到了用户未经身份验证的响应。当我试图打印
request.user
到控制台时,它显示为匿名用户。我跟你开玩笑说,这昨晚还不错。今天我醒来,做了一些改变,它开始行为不端。我恢复了所有更改,但它仍会出现错误

为什么会发生这种情况以及如何修复它?

auth.authenticate()
只需检查提供的用户凭据是否有效。 要实际登录用户,您必须使用