原文地址:Django 2.1.7 使用內置函數發送郵件html
Django中內置了郵件發送功能,被定義在django.core.mail模塊中。發送郵件須要使用SMTP服務器,經常使用的免費服務器有:163、126、QQ,下面以163郵件爲例。django
1)註冊163郵箱,登陸後設置。瀏覽器
設置開啓郵件服務,以下:bash
2)在新頁面中點擊「客戶端受權密碼」,勾選「開啓」,彈出新窗口填寫手機驗證碼。服務器
3)填寫受權碼。函數
4)提示開啓成功。ui
5)打開項目/settings.py
文件,配置以下:url
# 配置發送郵件服務器
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.163.com'
EMAIL_PORT = 25
#發送郵件的郵箱
EMAIL_HOST_USER = '****@163.com'
#在郵箱中設置的客戶端受權密碼
EMAIL_HOST_PASSWORD = '****'
#收件人看到的發件人
EMAIL_FROM = 'Django<****@163.com>'
複製代碼
6)在assetinfo/views.py文件中新建視圖send。spa
from django.conf import settings
from django.core.mail import send_mail
from django.http import HttpResponse
def send(request):
msg='<a href="http://www.baidu.com/" target="_blank">訪問百度</a>'
send_mail('訪問百度','',settings.EMAIL_FROM,
['lijw@****.cn'],
html_message=msg)
return HttpResponse('ok')
複製代碼
7)在assetinfo/urls.py文件中配置。3d
urlpatterns = [
# ex:/assetinfo/send
path('send', views.send , name='send'),
]
複製代碼
8)啓動服務器,在瀏覽器中輸入以下網址:
http://127.0.0.1:8000/assetinfo/send
郵件發送成功後,在郵箱中查看郵件以下圖: