2016-07-24 1 views
0

홈 페이지 TemplateView이 주어지면 로그인 할 때 특정 사용자를 특정 대시 보드 페이지로 리디렉션하려고합니다. dispatch 메서드를 통해 이렇게 결정했습니다.Django TemplateView가 dispatch시 "HttpResponse 객체를 반환하지 않았습니다."

class HomeView(FormMixin, TemplateView): 
    template_name = 'home.html' 
    form_class = LoginForm 
    error_message = "" 

    def dispatch(self, request, *args, **kwargs): 
     if request.user.is_authenticated(): 
      redirect_to = settings.LOGIN_REDIRECT_URL 
      return redirect(redirect_to) 
     else: 
      super(HomeView, self).dispatch(request, *args, **kwargs) 

사용자가 로그인 할 때 코드가 정상입니다. 리디렉션 뷰로 리디렉션됩니다. 사용자가 로그인하지 않은 경우에는,이 뷰가 다음과 같은 오류가 발생합니다 :

ValueError: The view home_app.views.HomeView didn't return an HttpResponse object. It returned None instead. 

을 나는 getpost 메소드를 오버라이드 (override) 후에도 여전히 오류가 발생했습니다. 이 문제를 어떻게 해결할 수 있습니까? 당신은 다른 후 반환하지 않았습니다

+3

을 없다 왜 당신은()'최고'전에'return'를 잊었입니다. – knbk

+0

는 아마추어 오류처럼 보입니다! 감사! – bryansis2010

+0

그것은 우리 중 최고에 일어난다 :) – knbk

답변

0

는 당신이 인증 때 반환 없음을

관련 문제