LoginView에서 form_valid()메서드에서 로그인 처리하는 auth_login 메서드 볼 수 있음.
login( )메서드를 auth_login으로 이름 바꿔서 사용하고 있는것 확인 가능
https://github.com/django/django/blob/master/django/contrib/auth/views.py
https://github.com/django/django/blob/master/django/contrib/auth/__init__.py
에서 login 처리하는 메서드 구현된것 확인 가능.
이제 회원가입과 동시에 Login이 되게 하려면 아래처럼 auth_login() 메서드를 사용하면 된다.
그러기 위해서 인자로 (request, user)를 넘겨주어야 하는데 CreateView의 조상 클래스 ModelFormMixin의 form_valid() 함수에서 self.object=form.save() 를 호출하여 여기서는 회원가입을 하였으니 form에 입력된 User객체가 self.object에 저장됨을 알 수 있다.
따라서 아래처럼 form_valid( ) 함수를 오버라이드하고 부모의 form_valid( )함수를 호출한 후 얻은 user 객체로 auth_login( ) 함수를 호출하여 로그인 처리를 할 수 있게 된다.
https://github.com/django/django/blob/master/django/views/generic/edit.py
'장고 프레임워크' 카테고리의 다른 글
django 데이타베이스 모델을 외부 스크립트에서 사용하는 방법 (0) | 2020.06.29 |
---|---|
장고 기본 인증) 로그아웃 처리 (0) | 2020.06.22 |
장고 기본 인증)05 회원가입 (0) | 2020.06.21 |
장고 기본 인증 4) loginForm Custom (퀴즈를 맞춰야 로그인) (0) | 2020.06.21 |
장고 기본 인증) 1 로그인 처리 (0) | 2020.06.18 |
댓글