pre-print 개발일지
7/25~7/28
모델 생성
다음과 같이 유저모델을 생성하였다.
장고에서 지원하는 클래스를 상속받아 사용하고
User라는 클래스를 커스텀하여 사용하고 있다.
현재는 phone이라는 정보만 테스트 삼아 추가하였으나
이후 프린트 사업에 필요한 정보를 수집하여 추가할 예정이다.
커스텀한 모델을 사용하기 위해 settings.py에 이 부분을 추가하자
form을 사용하여 회원가입과 로그인, 로그아웃 구현
다음과 같이 장고에서 지원하는 form을 사용하여
회원가입과 로그인에 필요할 폼을 쉽게 만들었다.
회원가입 구현
요청방식이 GET일 때는 폼을 출력하고 회원가입 페이지로 넘기고
정보를 작성하고 제출할 때, 요청이 POST일 경우 form의 유효성을 검사하고
올바른 정보이면 정보를 저장하며 회원가입을 완료한 후 main페이지로 넘긴다.
혹 유효성 검사에서 실패할 경우(비밀번호 부적합, 정보 누락) 회원가입 페이지로 리로딩한다.
로그인 구현
이미 장고에서 다 지원하고 있는 인증 폼을 사용하여 회원가입의 구현방식과 동일하게 GET, POST방식에 따라
구분하여 준다.
로그인을 시도하는 => POST 요청일 경우 폼의 유효성을 다시 체크하고 올바른 정보라면 login 한다.
정보가 일치하지 않을 경우 login페이지로 리로딩한다.
로그아웃 구현
이미 장고에서 지원하는 폼을 사용하니 상당히 편하다.
유저가 인증되어 있는, 즉 로그인되어 있는 상태에서 로그아웃을 요청하면
바로 logout을 진행하고 main으로 돌려보내준다.
이미 존재하는 장고의 form을 사용하니 구현이 쉬웠다. 강의에서 진행하던 방식을
사용했기에 숙련도를 위해서 기존의 폼 말고 새롭게 만드는 과정도 거쳐봐야 이해도가 상승할 것 같다.
'Project > pre-print-project' 카테고리의 다른 글
Django pdf파일 페이지 계산하기(PyPDF2) & 마이페이지, 주문 상세 페이지 구현 (0) | 2023.08.05 |
---|---|
Django 장고 .gitignore 설정 & 민감한 정보 분리 & 깃허브 재개설 (0) | 2023.08.03 |
장고 media설정 & 파일 업로드, 다운로드 기능 구현 + ERD, 모델 수정 (0) | 2023.07.27 |
Django 데이터베이스 생성 및 파일 세팅 (0) | 2023.07.23 |
[preprint] 프로젝트 설명 (0) | 2023.07.22 |