Django邮件发送,登陆注册

Django邮件发送 注册登录

一、邮件发送

设置临时环境变量
windows下

设置

set 名称=值

获取

set 名称

Linux下

设置

export 名称=值

获取

echo $名称

实例:

export xlg=lucky

echo $xlg

配置settings.py

# 配置发送邮件所需的配置
EMAIL_HOST = 'smtp.1000phone.com'  # smtp服务器
EMAIL_HOST_PASSWORD = os.environ.get('MAIL_PASSWORD') # 邮箱密码或授权码
EMAIL_HOST_USER = os.environ.get('MAIL_USER')  # 用户名
(1) 发送单人邮件
# 发送一封邮件
#  发送纯文本邮件
"""
def sendMail(req):
    send_mail(
        '帅气的lucky老师啊',
        '买个冰送个棍  一口一个大牙印  学习python找lucky老师',
        # settings.EMAIL_HOST_USER,
        os.environ.get('MAIL_USER'),
        ['[email protected]'],
        fail_silently=False,
    )
    return HttpResponse('发送邮件')
"""


#  发送纯html邮件
def sendMail(req):
    send_mail(
        '帅气的lucky老师啊',
        '',
        os.environ.get('MAIL_USER'),
        ['[email protected]'],
        html_message = '<a href="http://www.codingke.com">扣丁课堂</a>',
        fail_silently=False,
    )
    return HttpResponse('发送邮件')
(2) 发送多人邮件
# 发送多人邮件
def send_many_email(req):
    message1 = ('Subject here', 'Here is the message', os.environ.get('MAIL_USER'), ['[email protected]', '[email protected]'])
    # message2 = ('Another Subject', 'Here is another message', '[email protected]', ['[email protected]'])
    send_mass_mail((message1,), fail_silently=False)
    return HttpResponse('给多人发送邮件')

datatuple = (
    ('Subject', 'Message.', '[email protected]', ['[email protected]']),
    ('Subject', 'Message.', '[email protected]', ['[email protected]']),
)
send_mass_mail(datatuple)

注意:

只能发送文本邮件 不能发送html-message html内容

send_mail与send_mass_mail的区别

send_mass_mail()和send_mail()的主要区别在于send_mail()每次执行时都会打开与邮件服务器的连接,而send_mass_mail()对所有邮件都使用一个连接。这使得发送\u mass\u mail()的效率略高

(3) 发送多人HTML邮件
# 发送多人 HTML格式的邮件
def ema(req):
    subject, from_email, to = 'hello', os.environ.get('MAIL_USER'), '[email protected]'
    text_content = ''
    html_content = '<p>This is an <strong>important</strong> message.</p>'
    msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
    msg.attach_alternative(html_content, "text/html")
    msg.send()
    return HttpResponse('发送邮件')

二、登录注册

注册功能步骤:
  1. 创建用户模型
  2. 创建视图路由地址和视图函数
  3. 创建模板
  4. 数据进行处理
  5. token值进行邮件激活的发送
  6. 渲染邮件激活模板
  7. 邮件激活
  8. 改变用户状态
(1) 创建注册用户的模型
# 用户表
class User(models.Model):
    username = models.CharField(max_length=20,unique=True,db_index=True,default='lucky',verbose_name='用户名')
    password_hash = models.CharField(max_length=140)
    sex = models.BooleanField(default=True,verbose_name='性别')
    age = models.IntegerField(default=18,verbose_name='年龄')
    email = models.CharField(max_length=50
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值