django에서 어떻게 메일 발송 및 메일 발송 설정 항목

1. 메일 보내기에 필요한 함수 가져오기
from django.core.mail import send_mail

2. 메일 보내기
send_mail(subject, message, from_email, recipient_list)

subject:     
message:     
from_email:        
recipient_list:     ,     

 3. django에서 settings.py 파일의 설정 항목
#       
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

# smpt     
EMAIL_HOST = 'smtp.163.com'

#   
EMAIL_PORT = 25

#        
EMAIL_HOST_USER = '[email protected]'

#               
EMAIL_HOST_PASSWORD = 'aA149789......'

#          
EMAIL_FROM = 'mayanan'


4. 메일을 보내는 템플릿
#    (subject:    , message:    , from_email:   , recipient:     , html_message:  Html       )
subject = "        "
message = ""
from_email = settings.EMAIL_FROM
recipient_list = [email]
html_message = "

%s,


http://127.0.0.1:8000/user/active/%s/" % (user_name, token, token) send_mail(subject, message, from_email, recipient_list, html_message=html_message)

5. 우편물 발송 오류 처리
163smtp로 메일을 보낼 때 553 권한 문제를 계속 신고합니다.
smtplib.SMTPSenderRefused: (553, b'Mail from must equal authorized user', 'webmaster@localhost')
해결 방법: 이메일 발송 시 DEFAULTFROM_EMAIL 설정은 반드시 작성해야 하며 컨텐츠 및 EMAILHOST_USER는 일치해야 해!
#       
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
# smpt     
EMAIL_HOST = 'smtp.163.com'
#   
EMAIL_PORT = 25
#        
EMAIL_HOST_USER = '[email protected]'
#               
EMAIL_HOST_PASSWORD = 'aA149789......'
#          
EMAIL_FROM = 'mayanan'
#         
DEFAULT_FROM_EMAIL = '[email protected]'

좋은 웹페이지 즐겨찾기