我在使用Django Web服务器测试我的项目时遇到logout()问题。这是我的退出视图:
def logout(request):
logout(request)
return render_to_response('main.html', {})
当我访问/注销(调用此视图)时,我会看到一个弹出窗口,说明Python崩溃了。它没有在控制台中给我任何痕迹。
答案 0 :(得分:11)
那里有一个轻微的递归问题。 logout
正在调用自己,依此类推,直到出现堆栈溢出。
导入时重命名视图或Django logout
函数。
答案 1 :(得分:2)
上面的答案说明了一切,但我发现使用某种独特的前缀重命名外部函数很有帮助,因此你知道它来自哪里,并且由于这个前缀,它永远不会与你自己的函数冲突。例如,如果您正在使用django的注销功能,那么您将拥有类似的内容:
from django.contrib.auth import logout as auth_logout
def logout(request):
auth_logout(request)
return render_to_response('main.html', {})