Pythonでは組み込みのSMTPメール送信モジュールを持って、Djangoは単にこれに基づきカプセル化された、私たちは、Djangoの環境でメールを送信することがより容易かつ柔軟にすることができます。
すべての機能はでdjango.core.mailあります。
記録の簡単な例
1.設定
まず、認証コードのメールボックスを取得(シーナメールなど)
次に、settings.pyの構成
= EMAIL_BACKEND ' django.core.mail.backends.smtp.EmailBackend ' EMAIL_HOST = ' smtp.sina.com ' #の中間の"シーナ"使用のメールサービス読ま EMAIL_PORT = 465 EMAIL_HOST_USER = ' メールアカウント' EMAIL_HOST_PASSWORD = " 許可をコード' EMAIL_USE_SSL = Trueの DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
『』 " EMAIL_USE_TLS EMAIL_USE_SSLとFalseに設定されたデフォルトによって、一つは設定する必要がTrueであるが、両方がTrueに設定されていない。 TLSに対応する通常ポート587、ポート465は、(TSL補強)SSLに対応「」 "
2.ルーティング
django.urls インポートパス からメールインポートビュー urlpatterns = [ パス(' 管理/ ' 、admin.site.urls)、 パス(' send_email / ' 、views.send_email) ]
3.ビュー
myemail のインポート設定 から django.core.mail インポート EmailMultiAlternatives #テキストのみを送信する場合、これは、HTMLを送信することができ、send_mail導入することができる DEF SEND_EMAIL(要求): 件名 = 「テストメッセージ」 #のメッセージの件名 FROM_EMAIL = settings.EMAIL_HOST_USER #送信者メール =に「[email protected] 」 #の受信者のメールボックス TEXT_CONTENT = 「このメッセージが表示された場合、電子メールサーバがHTMLのリンク機能を提供していない説明」 #ターゲットはHTML受け入れることができない場合は、メールボックスの内容を置き換える html_contentを= "<aのhref='http://www.baidu.com'>検索する</a> 「 #のHTMLメールの内容 MSG = EmailMultiAlternatives(件名、TEXT_CONTENT、FROM_EMAIL、[へ]) msg.attach_alternative(html_content、「テキスト/ HTML 「) #メールにHTMLコンテンツの結合 mag.send() の戻りをはHttpResponse(」メッセージが送信されました")