Django框架下用戶注冊郵箱驗(yàn)證功能的實(shí)現(xiàn)

需要熟悉Django的MVT模型
需要用到celery + Redis
配置celery和redis:
import djcelery djcelery.setup_loader() BROKER_URL = \'redis://127.0.0.1:6379/2\'
然后在INSTALLED_APPS中注冊celery:
INSTALLED_APPS = ( \'django.contrib.admin\', \'django.contrib.auth\', \'django.contrib.contenttypes\', \'django.contrib.sessions\', \'django.contrib.messages\', \'django.contrib.staticfiles\', \'djcelery\', # 注冊djcelery )
配置服務(wù)端郵箱:
# 發(fā)送郵件配置 EMAIL_BACKEND = \'django.core.mail.backends.smtp.EmailBackend\' # smtp服務(wù)器地址 EMAIL_HOST = \'your email server address\' # smtp服務(wù)器端口號 EMAIL_PORT = 25 # 發(fā)送郵件的郵箱 EMAIL_HOST_USER = \'your email address\' # 在郵箱中設(shè)置的客戶端授權(quán)密碼 EMAIL_HOST_PASSWORD = \'your email password\' # 你的郵箱密碼 # 收件人看到的發(fā)件人 EMAIL_FROM = \'projectname<your email address>\' task.py文件下的操作:
在對應(yīng)app下新建并編寫celery的task.py文件:
# 定義celery任務(wù) from celery import task from django.core.mail import send_mail from django.conf import settings @task def send_register_success_mail(username, password, email): \'\'\' 用戶注冊成功之后發(fā)送郵件任務(wù) \'\'\' msg = \'<h1>歡迎您成為****會(huì)員</h1>請您記好您的注冊信息:<br/>用戶名:\' + username + \'<br/>密碼:\' + password send_mail(\'歡迎信息\', \'\', settings.EMAIL_FROM, [email, ], html_message=msg) views.py文件下的操作:
在views.py文件下導(dǎo)入send_register_success_mail方法:
from user.tasks import send_register_success_mail # 導(dǎo)入發(fā)送郵件任務(wù)方法 @require_POST def send_mail(self,username, password, email): \'\'\'以非阻塞的方式發(fā)送郵件\'\'\' send_register_success_mail.delay(username=username, password=password,email=email) redirect(\'/\') # 返回到網(wǎng)頁根目錄
發(fā)送郵件只需要調(diào)用send_mail方法即可。
網(wǎng)頁名稱:Django框架下用戶注冊郵箱驗(yàn)證功能的實(shí)現(xiàn)
標(biāo)題URL:http://chinadenli.net/article8/cgidop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、Google、微信小程序、虛擬主機(jī)、云服務(wù)器、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)