내일배움캠프 66일차

김서영·2022년 12월 5일
0

내일배움캠프 TIL

목록 보기
68/85

1. 오늘 내가 한 일!

회원가입 시 이메일 인증 : 오늘 하루종일 회원가입 시 이메일 인증을 하는 코드를 작성했다. 중간에 오류에서 걸렸는데 먼저 성공한 팀원분의 힌트를 받아 결국 성공했다!! 도움을 받기는 했지만 스스로 해보려고 노력했기 때문에 만족한다😍
참고한 블로그 : https://velog.io/@kjyeon1101/%EC%9E%A5%EA%B3%A0-%EC%9D%B4%EB%A9%94%EC%9D%BC-%EC%9D%B8%EC%A6%9D%ED%95%98%EA%B8%B0-%EC%9D%B4%EB%A9%94%EC%9D%BC-%ED%85%9C%ED%94%8C%EB%A6%BF

요런 느낌?? 템플릿은 살짝 수정봐야 한다!!

2. 문무해알

- 이메일 인증 과정에서 발생한 오류들

- 문제점


- 무엇을 몰랐는지(내가 한 시도)

- 해결 방법

allauth, allauth.account, rest_framework.authtoken 앱 settings.py에 추가

- 알게 된 것

- smtplib.smtpsenderrefused: (530, b'5.7.0 authentication required.

- 문제점

- 무엇을 몰랐는지(내가 한 시도)

구글에 검색해서 안해본 것이 없는 것 같다..
EMAIL_HOST_USER(발송자 이메일), EMAIL_HOST_PASSWORD(발송자 비밀번호)를 print를 찍어봤더니 None값이 떠서 이게 제대로 안불러지는구나를 알게 되었다.

- 해결 방법

생각해보니

EMAIL_HOST_USER = os.environ.get("EMAIL_HOST_USER") # 발신할 이메일
EMAIL_HOST_PASSWORD = os.environ.get("EMAIL_HOST_PASSWORD") # 발신할 메일의 비밀번호

이런 코드가 있는데 environ.get에서 이메일과 비밀번호를 가져올 환경이 없었던 것이다!
그래서 .env파일을 가장 최상위 폴더위치에 생성하고 그 안에 환경변수로 이메일과 비밀번호 값을 넣어주었다!

EMAIL_HOST_USER = qkdxks0922@gmail.com
EMAIL_HOST_PASSWORD = 비밀번호 16자리

요로케!!!
그리고 당연히 smtp를 사용하려면 구글 앱 비밀번호를 받아야 한다!!
앱 비밀번호 받는 법 : https://support.google.com/accounts/answer/185833?hl=ko
그리고 메일 설정에 들어가서 imap을 가능하게 설정해주어야 한다!

- 알게 된 것

.env에서 환경변수 설정하는 법!
환경변수 설정 참고 자료 : https://daco2020.tistory.com/480

- shell에서 db 삭제하는 법

- 문제점

회원가입 시도를 계속 해야하다보니 db를 계속 삭제해야하는데 전체삭제를 매번하기는 귀찮으니 shell로 원하는 데이터만 삭제하는 법에 대해 배우게 되었다!

- 무엇을 몰랐는지(내가 한 시도)

- 해결 방법

python manage.py shell
from users.models import User
a = User.objects.get(id=선택한 아이디)
a.delete()

이렇게 하면 선택한 계정 하나만 삭제된다!!
장고 ORM을 사용한 방법👍

- 알게 된 것

profile
개발과 지식의 성장을 즐기는 개발자

0개의 댓글