Django:未找到反向路径
请原谅我的无知,我正在尝试重定向到登录页面,并显示一些错误信息,但我不知道为什么会出现这个Django错误:
NoReverseMatch at /dologin
Reverse for 'show_login' with arguments '()' and keyword arguments '{'error': 'Login Failed'}' not found. 0 pattern(s) tried: []
当调用这一行时:
return redirect('show_login', error="Login Failed")
我甚至不明白什么是reverse。我只是想把错误信息发送出去,让它显示登录页面,然后再处理这个错误:
def show_login(request, error=False):
return render(request, 'main/login.html', {"error": error})
而dologin是从urls.py文件中映射过来的:
...
url(r'^dologin', 'main.views.login', name='dologin'),
...
补充一下:这可能和这个有关: 我最开始是这样写的:
url(r'^login', 'main.views.show_login', name='login'),
但当我改成这样时:
url(r'^login', 'main.views.show_login', name='show_login'),
出现的错误是:
everse for 'show_login' with arguments '()' and keyword arguments '{'error': 'Login Failed'}' not found. 1 pattern(s) tried: ['login']
1 个回答
0
你的 show_login
这个视图没有接收任何参数,但你却想传一个 error
参数。我不太明白你想要实现什么,不过如果你把那个参数去掉的话,它就能正常工作了。