需要用到celery Redis
settings.py文件下的操作:
配置celery和redis:
import djcelery djcelery.setup_loader() BROKER_URL = \\\’redis://127.0.0.1:6379/2\\\’
然后在INSTALLED_APPS中注冊(cè)celery:
INSTALLED_APPS = ( \\\’django.contrib.admin\\\’, \\\’django.contrib.auth\\\’, \\\’django.contrib.contenttypes\\\’, \\\’django.contrib.sessions\\\’, \\\’django.contrib.messages\\\’, \\\’django.contrib.staticfiles\\\’, \\\’djcelery\\\’, # 注冊(cè)djcelery )
配置服務(wù)端郵箱:
# 發(fā)送郵件配置 EMAIL_BACKEND = \\\’django.core.mail.backends.smtp.EmailBackend\\\’ # smtp服務(wù)器地址 EMAIL_HOST = \\\’your email server address\\\’ # smtp服務(wù)器端口號(hào) 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文件下的操作:
在對(duì)應(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): \\\’\\\’\\\’ 用戶注冊(cè)成功之后發(fā)送郵件任務(wù) \\\’\\\’\\\’ msg = \\\'<h1>歡迎您成為****會(huì)員</h1>請(qǐng)您記好您的注冊(cè)信息:<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)頁(yè)根目錄
發(fā)送郵件只需要調(diào)用send_mail方法即可。
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)西部數(shù)碼官網(wǎng):www.bingfeng168.cn