3

以下の方法でメールを送信しています。

EmailMultiAlternatives() 

send() メソッドが呼び出されたとき。どこかの基本クラスでエラーが発生します。

lib/email/encoders.py
'Template' object has no attribute 'encode'

例外の場所: C:\Python27\lib\email\encoders.py、encode_7or8bit、73 行目

Python 実行可能ファイル: C:\Python27\python.exe

エラー パス:

>   return msg.send(fail_silently)

C:\Python27\lib\email\mime\text.py in __init__
>  self.set_payload(_text, _charset)

C:\Python27\lib\email\message.py in set_payload
>   self.set_charset(charset)

C:\Python27\lib\email\message.py in set_charset
>  cte(self)

C:\Python27\lib\email\encoders.py in encode_7or8bit
>  orig.encode('ascii')

誰でもこのエラーについて考えられますか?

次のコードを使用して更新 すると、問題の解決に役立ちました。

fail_silently=True

t = get_template(template_name)
html_part = t.render(context)
msg = EmailMultiAlternatives(subject,
                                 t,
                                 sender,
                                 recipients,
                                 bcc=bcc)
msg.attach_alternative(html_part, "text/html")

return msg.send(fail_silently)
4

1 に答える 1