장고 - 이메일 서버 셋팅
- 웹 서비스를 이용하면 회원 가입 시 메일을 보내는 등의 일을 해야할 때가 있다.
- 장고에서는 메일 서버를 셋팅하기만 하면 쉽게 메일을 보낼 수 있다.
- 이번에는 아래와 같은 순서로 gmail을 이용하여 메일을 보내보겠다.
1. gmail 설정 변경
- 외부에서 메일 보내기 서버를 사용하려면 gmail 설정에서 IMAP 사용으로 변경 필요
- gmail 로그인하여 화면 우측 상단 설정 버튼 클릭
- [전달 및 POP/IMAP] 탭으로 이동해 IMAP 사용에 체크
- 화면 하단의 [변경사항 저장] 버튼 클릭
- 보안 수준이 낮은 앱의 액세스 허용을 위해 계정 -> Google 계정을 클릭해 계정 설정으로 이동
- 계정 설정 화면에서 [보안] 탭 클릭 > [보안 수준이 낮은 앱의 액세스] 부분을 찾아 [액세스 사용 설정] 버튼 클릭
2. django 프로젝트의 settings.py에 메일서버 설정
1 | EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' |
3. 쉘을 이용한 메일 전송 테스트
쉘 접속
$ python manage.py shell
일반 메일 전송
1
2
3from django.core.mail import EmailMessage
email = EmailMessage('제목', '본문', to=['받는 사람 이메일주소'])
email.send()HTML 포함된 메일 전송
1
2
3
4from django.core.mail import EmailMultiAlternatives
email = EmailMultiAlternatives('제목', '본문', to=['받는사람 이메일주소'])
email.attach_alternative("html이 포함된 본문", "text/html")
email.send()send 메시지 실행했을 때, 1이 출력되면 메일 전송 성공 -> 받는 메일함에서 확인
Posted