当我点击页面/ users / login时,我在/ user / login /收到错误NoReverseMatch。 以下是我的代码的外观
urls.py
url(r'^$', 'views.homepage', name='home'),
url(r'^user/login/$', 'coolstuff.views.login_view'),
views.py
def login_view(request):
if request.method == 'POST':
username = request.POST['email']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None and user.is_active:
login(request, user)
return HttpResponseRedirect(request.GET.get("next"))
else:
login_error = "Your username and/or password are incorrect."
return HttpResponseRedirect(reverse('views.homepage', kwargs={'login_error': login_error}))
def homepage(request, login_error=''):
return render_to_response(homepage.html,
{'login_error': login_error,},
context_instance=RequestContext(request))
所以,我想只在用户键入错误的用户名或密码时传递login_error变量。在任何其他情况下,主页都被调用而没有login_error。 我试图将login_error作为额外的变量传递给视图函数,但在/ user / login /中获取错误NoReverseMatch。
我该如何解决这个问题?