본문 바로가기
Web/Django

[Django] 권한과 인증 기능 사용해보기 - Part 3 (회원가입 기능 만들기)

by char_lie 2023. 3. 26.
반응형
반응형

django를 활용해서 회원가입 기능을 구현해보자.

기본적인 코드 형태는 아래 Part 2을 따라가니 참고하자

https://edder773.tistory.com/104

 

[Django] 권한과 인증 기능 사용해보기 - Part 2 (로그아웃 기능 만들기)

django를 활용해서 로그아웃 기능을 구현해보자. 기본적인 코드 형태는 아래 Part 1을 따라가니 참고하자 https://edder773.tistory.com/103 [Django] 권한과 인증 기능 사용해보기 - Part 1 (로그인 기능 만들기)

edder773.tistory.com

권한과 인증 기능을 이해하고 실제로 회원가입 기능을 구현해보자!


실습

바로 회원가입 기능을 구현해서 적용해보자

 

먼저 회원가입에 사용하는 UserCreationForm은 기존 User 모델을 참조하는 Form이기 때문에 커스텀 모델로 만들어줄 필요가 있다.

커스텀을 위해 forms.py를 생성하고, 커스텀을 진행해보자. 아래의 코드를 작성해준다.

from django.contrib.auth import get_user_model
from django.contrib.auth.forms import UserCreationForm

class CustomedUserCreationForm(UserCreationForm):
    class Meta(UserCreationForm.Meta):
        model = get_user_model()

커스텀을 이렇게 간단하게 완료할 수 있다.

회원가입 기능을 만들기 위해서는 회원가입을 위한 path와 페이지가 필요하니 urls에서 경로를 지정부터 해주자.

path를 지정해줬으니, views.py에 signup 함수를 정의해주자.

사용한 클래스만 다르지 기본 구성은 login 함수와 동일하다

함수까지 정의를 완료해줬으면, 회원가입 페이지를 만들자. 회원 가입페이지의 구조는 login과 비슷하고, url만 다르게 만들어주면 된다.

이제 회원가입 페이지에 접근 할 수 있도록 base.html에 링크를 하나 만들어주자.

이제 서버를 열어서 정상 작동하는지 확인해보자.

서버에 회원가입 페이지가 생성된 것을 알 수 있다.

회원 가입을 누르면 회원가입 페이지로 정상 이동하는 것을 확인 할 수 있다.

이제 회원가입을 진행해보자. 요구조건에 맞게 작성해야하므로 임의로 아이디를 만들었다.

제출을 누르면 메인 페이지로 이동이 된다. 이제 로그인을 해서 정상 회원가입이 됐는지 확인해보자.

제출을 누르면 정상적으로 로그인이 진행된 것을 확인할 수 있다.

여기까지 회원가입까지 만들었다. 

지금 하는 과정을 다시 생각해보면, 게시판을 처음 만들 때 했던 CRUD 과정을 그대로 다시하는 것이라고 생각하면 된다.

회원가입은 Create에 해당한다.


다음 포스팅은 회원가입을 했으니 회원 탈퇴 기능을 구현해보겠습니다

반응형

댓글