일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 장고
- test.py
- 와이어프레임
- 이진 논리 회귀
- js
- serializer
- 댓글지우기
- Django
- 댓글쓰기
- ERD
- 팔로우 기능 에러
- Python
- 다항 논리 회귀
- 딥러닝
- python to json
- 북마크한 목록 가져오기
- API명세
- CNN
- 프론트엔드
- 팀프로젝트 기획
- json to db
- 머신러닝
- original set
- docker
- DRF
- class view
- 프로필사진 업로드
- 백엔드
- 개인페이지
- 비밀번호 수정
- Today
- Total
코딩 개발일지
장고 회원가입+로그인/로그아웃 본문
python manage.py startapp user
(user 앱 만들기)
저번과 마찬가지로 models.py 에서 User라는 클래스를 만들어준다.
AbstractUser 또는 AbstractBaseUser 를 import해서 사용하는데, 회원가입할 때 사용한다.
admin.py에서
이건 추가 안해줘도 작동하지만(장고가 기본제공), 무조건 해야하는 것이라고 생각하는게 좋다.
나중에 User 데이터를 수정하고 싶을 때, 힘들어진다고 함
본 프로젝트의 settings.py에서
를 맨 아래에 추가해주고,
부분에 user도 추가해준다.
본 프로젝트의 urls.py에서
또한 추가해준다.
models.py에서도
추가해주고, migrate해줘야함.
아마 에러나면서 database 다시 해야할텐데, 이런 이유때문 앱은 user먼저 만드는게 좋다
이제 user앱의
views.py에서 signup이라는 method를 정의해준다.
create_user 대신 create로 생성하면, 비밀번호 노출 위험이 있으므로 꼭 create_user로 만들어주기
여기서 나는 회원가입이 안되는 문제에 부딪혔다.
자꾸 에러가 났음

이런 에러가 나길래, 구글링을 엄청 했는데, 전혀 찾지 못했고, AbstractUser를 AbstractBaseUser 로 바꿔보기도 하고, 처음부터 다시 다 만들어도 안됌
db.sqlite3 파일에서 데이터베이스를 보다가, 혹시 같은 아이디를 등록하려고 해서 오류가 나려나..? 해서 아이디를 바꿔서 만들어보니까 잘 만들어졌음.

하ㅏㅏ.. 몇시간 날렸다.. 계속 user라는 아이디로만 만들다보니 에러가 난것. 나중에 중복된 아이디라고 하는 중복 처리를 꼭 해야겠다는 생각이 들었음
로그인도 마찬가지로 urls, views.py, login.html을 작성해주면된다.
authenticate 를 통해 자격성이 있는지를 판단한다
login은 user의 id와 pw를 장고의 session에 저장한다
logout을 호출하면 세션에 저장된 데이터는 완전히 지워지며 로그아웃을 실행한다
이 모든것들은 다 장고에서 기본적으로 제공된다. import만 해주면됌
이것도 로그인된 경우만 아래 함수가 실행될 수 있도록 하는 기능이다.
views.py에서 def 함수 바로위에 써주면 된다.
이후에는, todo의 index.html 에 회원가입,로그인 버튼을 추가해주면 끝!!!!
button 이나 a태그로 href 해서 user로 보내주면 된다.
'AI 본 교육 > AI 5주차' 카테고리의 다른 글
장고 팀프로젝트 ERD / API명세 / 와이어프레임 (0) | 2023.09.08 |
---|---|
제출용 - 7팀 SA(Starting Assignments) - 버킷리스트 (0) | 2023.09.08 |
장고 과제 (개인페이지 / 완료 체크리스트 만들기) (2) | 2023.09.07 |
장고 수정하기 에러 / 이미지파일 추가 (1) | 2023.09.06 |
장고(Django 기본 틀 만들기 과정) 명령어 (2) | 2023.09.04 |