zoukankan      html  css  js  c++  java
  • Django积木块二——邮箱

    邮箱

    django中自带的功能,因为登录注册都需要邮箱,因此新增了一个小的app——utils用来存放

    # email_send.py
    import random
    from django.core.mail import send_mail
    
    from users.models import EmailVerifyRecord
    from MxOnline.settings import EMAIL_FROM
    
    
    def random_str(randomlength=8):
        str = ''
        chars = 'AaBbCcDdEeFfGgHhIiJiKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789'
        length = len(chars) - 1
        for i in range(randomlength):
            str += chars[random.randint(0, length)]
        return str
    
    
    
    def send_register_email(email, send_type = 'register'):
        email_record = EmailVerifyRecord()
        code = random_str(16)
        email_record.code = code
        email_record.email = email
        email_record.send_type = send_type
        email_record.save()
    
        email_title = ''
        email_body = ''
    
        if send_type == 'register':
            email_title = '慕学在线网注册激活链接'
            email_body = '请点击下面的链接激活你的账号:http://127.0.0.1:8000/active/{0}'.format(code)
            try:
                send_status = send_mail(email_title, email_body, EMAIL_FROM, [email])
            except Exception,e:
                print e
            else:
                print send_status
    
        if send_type == 'forget':
            email_title = '慕学在线网密码重置链接'
            email_body = '请点击下面的链接重置你的密码:http://127.0.0.1:8000/reset/{0}'.format(code)
            try:
                send_status = send_mail(email_title, email_body, EMAIL_FROM, [email])
            except Exception,e:
                print e
            else:
                print send_status
    
    # setting 注意要开通邮箱的SMP服务,163邮箱中的密码是授权码,EMAIL_USE_TLS = False,QQ邮箱中这个参数可能需要改为True
    EMAIL_HOST = 'smtp.163.com'
    EMAIL_PORT = 25
    EMAIL_HOST_USER = '你的邮箱名'
    EMAIL_HOST_PASSWORD = '你的授权码'
    EMAIL_USE_TLS = False
    EMAIL_FROM = '你的邮箱名'
    
    #之后需要邮箱的时候调用这个函数就好了
    
    
  • 相关阅读:
    [LeetCode 116 117]
    看几道JQuery试题后总结(下篇)
    插入排序及其扩展
    Operation not permitted引发的惊魂72小时
    dddd
    天底下什么人都有,不要跟他们一般见识就是了
    qt宽字符串中文乱码(codec->toUnicode值得学习)
    qt事件传递过程和处理
    qt新进程工作目录的设置(工作目录确实是被子进程继承的,但也可以设置)
    面试都爱问的委托和事件(纠正)
  • 原文地址:https://www.cnblogs.com/NeedEnjoyLife/p/6943399.html
Copyright © 2011-2022 走看看