【Django-CI系统】Django使用SMTP邮件通知功能给指定人员-20220525

views.py:先查出待审核主管的邮件地址,发送邮件给主管审核

        
        # 先查出待审核主管的邮件地址
        dept_mail_set = set()
        for each_suggestion_dept_reviewer in suggestion_dept_reviewer:
            pass
            print('each_suggestion_dept_reviewer',each_suggestion_dept_reviewer)
            euser = EmployeeUser.objects.filter(query_dept__contains=each_suggestion_dept_reviewer)[0]
            print('待审核主管的邮件地址:euser.employee_email',euser.employee_email)
            dept_mail_set.add(euser.employee_email)


        # 发送邮件给主管审核
        if SEND_MIAL_STATUS == True:
            if dept_mail_set:
                dept_mail_list = []
                dept_mail_set = list(dept_mail_set)
                dept_mail_list.extend(dept_mail_set)
                print('dept_mail_list',dept_mail_list)
                send_mail(receivers=receivers.extend(dept_mail_list), title='【CI合理化建议-主管审核】点击签核', msg=get_msg(x='suggestion_list_query'))
            else:
                send_mail(receivers=receivers, title='【CI合理化建议-主管审核】点击签核', msg=get_msg(x='dept_review_list_query'))

views.py中的send_mail()


SEND_MIAL_STATUS = True
receivers = ['ci_system_robot001@163.com']
title = "【CI合理化建议-CI审核】点击签核"
def get_msg(x='suggestion_list_query'):
    msg = '''
    <div>Dear all,</div>
    <div>您收到一张合理化建议的待签核表单,请点击下方进行签核。</div>
    <div>承办人:</div>
    <div>邮件为自动发送,请不要直接回复。</div>
    '''.format(x)
    return msg


def send_mail(receivers=receivers, title=title, msg=get_msg(x='suggestion_list_query')):
    """
    发送邮件
        
    Arguments:
       msg {str} -- 邮件正文
        title {str} -- 邮件标题
        receivers {list} -- 邮件接收者,数组
    """

    yag = yagmail.SMTP(
        host='smtp.163.com', user='ci_system_robot001@163.com',
        password='*******', smtp_ssl=True
        )
    print('yagmail启动')

    try:
        yag.send(receivers, title, msg)
        print('yagmail发送成功')

    except BaseException as e:
        print (e)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值