기초 개념 및 기능 참조
Section 1. 회원가입 기능 구현
1. Form 생성
2. Template 생성
3. Class-based View 생성
- FormView 상속 (from django.views.generic.edit import FormView)
- template_name - GET 요청 시 응답 template
- form_class - 해당 페이지에 보여질 form
- success_url - POST 요청에 대한 에러가 없을 시 redirect
4. URL 파싱
- RegisterView.as_view() - 클래스를 처리 로직 view 로 접근하겠다는 의미
Section 2. 로그인 및 로그아웃 기능 구현
1. 로그인 Form 생성
- form.email = email
2. 로그인 Template 생성
3. 로그인 Class-based View 생성
- form_valid() - 유효성 검사가 성공적일 때 수행되는 함수 (success_url 로 이동)
- form_valid() 함수 오버라이딩 후 super() 를 이용해서 원래 기능 또한 수행
self.request.session['user'] = form.email # 1번 방법 (form.email에 email 값 저장되어있음)
self.request.session['user'] = form.data.get('email') # 2번 방법 (FormView 자동)
4. 로그아웃 View 생성
- if 문으로 제어하지 않을 시 user 가 없는 경우에 에러 발생
5. 로그인 및 로그아웃 URL 파싱