forms.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:site 作者: alphageek-xyz 项目源码 文件源码
def send_email(self, request=None):

        emails = [EmailMultiAlternatives(**{
            'subject'    : 'Contact Form: ' + str(self.instance.name),
            'to'         : [mkemail(*a) for a in settings.ADMINS],
            'reply_to'   : [mkemail(str(self.instance.name), self.cleaned_data['email'])],
            'body'       : str().join('{0:15s} : {1}\n'.format(
                            self.fields[f].label, self.cleaned_data[f])
                            for f in self._meta.fields),
        })]

        emails[0].attach_alternative(
            render_to_string('contact/email.html',
                context={
                    'name'    : str(self.instance.name),
                    'phone'   : self.cleaned_data['phone'],
                    'email'   : self.cleaned_data['email'],
                    'comment' : self.cleaned_data['comment'],
                },
                request=request
            ), 'text/html'
        )

        if self.cleaned_data['cc_myself']:
            emails.append(copy.copy(emails[0]))
            emails[1].to = emails[0].reply_to
            emails[1].reply_to = [settings.DEFAULT_REPLY_ADDR]

        try:
            with get_connection() as con:
                con.send_messages(emails)
                con.close()
        except BadHeaderError as e:
            return HttpResponse(' '.join(
                ['BadHeaderError:'] + list(e.args)
            ))
        except Exception as e: # pragma: no cover
            print(e)
            return False
        return True
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号