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 = '你的邮箱名'
    
    #之后需要邮箱的时候调用这个函数就好了
    
    
  • 相关阅读:
    iOS提交后申请加急审核
    EF5.0修改实体的时候,出现“对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性这个错误
    验证码生成-->漂亮啊
    用js将毫秒时间转成正常时间
    Ajax异步请求-简单模版
    unity3d自己写角色移动脚本
    unity3d实现序列帧动画
    unity3d切换场景时,背景音乐保持播放
    C#给文件重命名
    NGUI如何创建自己的精灵图集
  • 原文地址:https://www.cnblogs.com/NeedEnjoyLife/p/6943399.html
Copyright © 2011-2022 走看看