2013-06-16 2 views
0

페이지/사용자/로그인을 클릭하면/user/login /에서 NoReverseMatch 오류가 발생합니다. 아래 내 코드는 그래서, 내가 login_error 변수를 전달하려는인수를 전달할 때 django 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없이 호출됩니다. view_function에 추가 변수로 login_error를 전달하려고하는데,/user/login /에서 NoReverseMatch 오류가 발생합니다.

어떻게 해결할 수 있습니까?

+0

어떤 장고 버전을 사용하고 있습니까? –

+0

django 1.5를 사용하고 있습니다. – Dev

+0

'homepage.html' 템플릿을 게시 할 수 있습니까? –

답변

2

보기가 실패하는 이유 인 URL 패턴에서 인수를 취하지 않습니다. 이 사용 사례를 위해 설계된 messages framework을 사용해야합니다.

관련 문제