Django如何使用第三方服务发送电子邮件

yipeiwu_com5年前Python基础

在 Django 网站中使用 mailgun 的邮件收发服务。

1.在 mailgun 官网上注册个账号(免费,免费账号每个月有10000条收发邮件的服务,对我来说已经完全够用了),注册完成后界面如图所示:

然后我们点击 Domain选项,可以看到系统自动为我们生成了一个默认可用域名,点进去查看详细信息。

注意这个域名只是作为测试用,如果需要用来收发电子邮件,你需要添加新域名或者在该测试域名设置下 Authorized Recipients -> Manage Authorized Recipients 添加收发信任邮箱。

2.安装 anymail 模块,该模块支持多个第三方邮件收发服务与 Django 建立连接。

pip install django-anymail

该模块的详细用法,参考:https://github.com/anymail/django-anymail

3.然后我们在 Django 项目中的 setting.py 文件中添加

INSTALLED_APPS = [
  # ...
  "anymail",
  # ...
]
ANYMAIL = {
  "MAILGUN_API_KEY": "your Mailgun key",
  "MAILGUN_SENDER_DOMAIN": 'mg.example.com', # your Mailgun domain, if needed
}
EMAIL_BACKEND = "anymail.backends.mailgun.EmailBackend" # or sendgrid.EmailBackend, or...
DEFAULT_FROM_EMAIL = "you@example.com" # if you don't already have this in settings

MAILGUN_API_KEY 和 MAILGUN_SENDER_DOMAID 这两个参数,可以从邮件域名设置中找到:

view.py 文件中添加:

from django.core.mail import send_mail
#只需一个send_mail 函数,便能发送邮件
send_mail("It works!", "This will get sent through Mailgun",
     "Anymail Sender <from@example.com>", [to@example.com])

(官网的例子哈,跟我项目有差入就不修改了)

4.运行 Django 项目,填入反馈意见,便在我们设置的邮箱中收到发送的邮件。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中shape计算矩阵的方法示例

本文实例讲述了Python中shape计算矩阵的方法。分享给大家供大家参考,具体如下: 看到机器学习算法时,注意到了shape计算矩阵的方法接下来就讲讲我的理解吧 >>&...

详解Python中的format格式化函数的使用方法

详解Python中的format格式化函数的使用方法

format函数实现字符串格式化的功能 基本语法为: 通过 : 和 {} 来控制字符串的操作 一、对字符串进行操作 1. 不设置指定位置,按默认顺序插入 ①当参数个数等于{}个数的时候...

关于tensorflow的几种参数初始化方法小结

在tensorflow中,经常会遇到参数初始化问题,比如在训练自己的词向量时,需要对原始的embeddigs矩阵进行初始化,更一般的,在全连接神经网络中,每层的权值w也需要进行初始化。...

Python打印“菱形”星号代码方法

Python打印“菱形”星号代码方法

本人是一名python初学者,刚刚看到一道有趣的python问题,“用python如何在编译器中打印出菱形图案?” 因此决定尝试一下,代码不多,仅供参考。 代码 def print...

python使用socket远程连接错误处理方法

本文实例讲述了python使用socket远程连接错误处理方法。分享给大家供大家参考。具体如下: import socket, sys host = sys.argv[1] text...