django发送邮件setting设置及celery设置
来源:互联网 发布:linux 当前目录大小 编辑:程序博客网 时间:2024/05/21 18:33
发送邮件的邮箱设置
在setting中进行如下设置
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' # 每个邮箱都有不同的服务器 163邮箱为smtp.163.com,qq邮箱为smtp.qq.com EMAIL_HOST = 'smtp.aliyun.com' EMAIL_PORT = 25 # 发送源即发送邮件的邮箱EMAIL_HOST_USER = 'XXX@aliyun.com' # 在邮箱中设置的客户端授权密码 # 如果是aliyun邮箱这个是你账号的密码,如果是163/126邮箱或qq邮箱这个是授权码,# 163/126的授权码会在你开通SMTP服务时自行设置,qq邮箱会分配一个授权码。EMAIL_HOST_PASSWORD = '' # qq邮箱此值为True,aliyun此值为False,163可以忽略此值EMAIL_USE_TLS = False #这个邮箱必须和上面的发送源邮箱相同。EMAIL_FROM = '发送人<XXX@aliyun.com>'
163邮箱开通SMTP
进入163邮箱找到
全部勾选后保存
其他邮箱也是类似的操作只不过获取授权码的方式有所不同
celery异步发送邮件
首先安装
celery[redis]
django-celery
在要发送邮件的app文件夹下创建tasks.py文件编写如下内容
from celery.task import taskfrom django.core.mail import send_mailfrom django.conf import settings# 用装饰器装饰发送邮件的函数@task def send_msg(email): # send_mail的第一个参数为:主标题; # 第二个参数为:文本内容; # 第三个参数为发送源邮箱; # 第四个参数为一个列表或元组表示要发送给哪个邮箱可以是多个; # 第五个参数为:可以将html标签翻译如a标签中如果有href属性他的内容就可以被点击。 # 注意:第二个参数和第五个参数不能同时存在,如果同时存在第五个参数会覆盖掉第二个参数中的内容。 send_mail( "标题", "不能够翻译html标签的内容", settings.EMAIL_HOST_USER, (email,), html_message="<a href='127.0.0.1/index/'>html_message这是一个能够翻译html标签的内容</a>" )
然后再视图函数中导入上述的send_msg
调用send_msg.delay(email) 将要发送的邮箱传入
最后在setting中进行如下设置
import djcelery # 在INSTALLED_APPS中注册djcelery djcelery.setup_loader() BROKER_URL = 'redis://127.0.0.1:6379/3' # redis所在的主机ip和端口号最后面是数据库 CELERY_IMPORTS = ('apps.users.tasks') # 设置路径让celery能找到tasks文件
建议:每次修改setting是重启服务器,发送邮件时不要乱发,用自己的邮箱验证即可。
能力有限,仅供参考,如有错误请留言,会及时修改
阅读全文
0 0
- django发送邮件setting设置及celery设置
- celery+django+redis异步处理邮件发送
- Django + Celery + Rabbitmq setting
- django templates setting 地址设置
- 设置邮件发送
- mediawiki发送邮件设置
- DESTOON邮件发送设置
- wordpress发送邮件设置
- Django 表单及邮件发送
- 发送邮件 设置邮件昵称
- 发送邮件格式的设置
- javamail设置SSL发送邮件
- bugfree3.0.1邮件发送设置
- 如何设置PHP发送邮件
- Magento邮件发送完美设置
- magento 设置smtp发送邮件
- destoon 邮件发送配置设置
- jenkins 设置 smtp 发送邮件
- HDU 3336 Count the string
- 『 Spark 』7. 使用 Spark DataFrame 进行大数据分析
- C#学习目标
- Could not resolve placeholder 'jdbc.url' in string value "${jdbc.url}"
- HttpServlet
- django发送邮件setting设置及celery设置
- zabbix监控parameter mysql的状态
- ES6的新特性
- 1、Nginx和Tengine概述及安装、启动
- cocos2dx CCMenu.h:error: 'override' does not name a type
- CSS 移动端
- 安装centos与配置IP地址,远程登录
- HDU 4641 K-string (SAM)
- Nginx反向代理配置示例