尝试注销Django时出现运行时错误 [英] Runtime error when trying to logout django
本文介绍了尝试注销Django时出现运行时错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我尝试从django项目中注销时,出现以下错误:
When I try to logout from my django project, I get the following error:
调用Python对象时超出了最大递归深度"
"maximum recursion depth exceeded while calling a Python object"
这是注销按钮的网址:
url(r'^logout', 'users.views.logout', name='logout'),
这是视图:
from django.shortcuts import render
from deck1.models import Card
from django.template import RequestContext
from django.shortcuts import render_to_response
from django.http import HttpResponseRedirect, HttpResponse
from django.contrib.auth.forms import UserCreationForm
from django.contrib.auth.forms import AuthenticationForm
from django.contrib.auth import login, authenticate, logout
from django.contrib.auth.decorators import login_required
from users.forms import RegisterForm
@login_required
def logout(request):
logout(request)
return HttpResponseRedirect('/deck')
推荐答案
您的视图logout
覆盖了内置logout
函数的名称空间.使用as
关键字为django.contrib.auth.login
函数定义别名.
Your view logout
is overriding the namespace of built-in logout
function. Define an alias for django.contrib.auth.login
function using as
keyword.
from django.contrib.auth import logout as django_logout
@login_required
def logout(request):
django_logout(request)
return HttpResponseRedirect('/deck')
这篇关于尝试注销Django时出现运行时错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文