(class based view 를 만들때 주요한 파라미터인 model 을 장고에서 기본 제공해주는 User 모델을 사용함.
상속 받는 클래스의 정보를 ctrl+b로 확인 가능.
위의 User 모델을 만드는데 필요한 form 이 필요한데 'form_class'가 바로 그것이다. 계정 같은 경우는 중요한 정보이기 때문에 장고가 기본적인 form 을 제공하는 것이다. 그 이름이 'UserCreationFrom' 이다.
'success_url'의 경우 이 계정을 만들기 성공을 했다면 어느 경로로 재연결을 할 것인가를 지정해준다. reverse_lazy('경로명')을 이용한다.
reverse_lazy를 reverse 대신 사용하는 이유 : 함수와 클래스가 불러와지는 방식의 차이 때문에 reverse를 클래스에서는 사용할 수 없다. 클래스 형 view 에서는 reverse_lazy를 사용하자
template_name 을 통해 템플릿(유저가 볼 내용)을 지정해줘야 한다.
위에서는 아직 해당 이름의 html 파일을 만들어 주지는 않았다.
전의 함수 기반 view 와 비교 했을때 간단해진 것을 확인 할 수 있다.)
(위의 함수 경로 지정과 다른 점은 클래스 명 뒤에 .as_view()를 붙여야 하는 것이다. 또한 새로운 경로명과 이름을 지정해준 것을 볼 수 있다.)
(form 문에서 action을 취할 url 지정을 일원화 하였다. 앞으로는 저런 형식을 많이 쓸 것이며 accountapp의 create 로 연결하라는 의미를 지닌다.
{{ form }} 같은 경우에는 앞에서 hello_world 함수에서는 아이디 입력, 비밀번호 입력 이런 거를 하나하나 스타일링 하고 정의 해줘야 하는 반면 이 {{ form }} 을 이용하면 view.py 에서 아래와 같이 지정한 form 클래스가 위와 같이 적으면 미리 있던 클래스가 적용이 되는 것이다.)
(이후 create 경로를 통해 서버를 작동한 모습이다. username 과 password 를 입력하면 account/hello_world/ 로 이동하여 전에 만들었던 곳으로 이동한다.)
=> 정상적으로 로그인이 되었는지 확인 하는 것은 다음 강의에서 배운다.