0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Djangoでmailgunを使う方法

Posted at

正直お勧めしません

高いし、最低プランで5万通なので。amazon sesとかのほうがいいと思います(無料枠あるし。でも僕は承認されなかった)。mailgunも何かすごい部分があるのかもしれませんが..

設定ファイル settings.py

settings.pyで設定
env()はdjango-environです。共有するときに、見られたらいけないapi keyとかを別ファイルに書ける。gitignoreでそのファイルをgitから除外するとgithubとかで公開されない。

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.mailgun.org'  # MailgunのSMTPホスト
EMAIL_PORT = 587  # SMTPポート
EMAIL_USE_TLS = True
EMAIL_HOST_USER = env('EMAIL_HOST_USER') # postmaster@.... みたいなやつ 認証してないならpostmaster@sandbox...mailgun.orgみたいな
EMAIL_HOST_PASSWORD = env('EMAIL_HOST_PASSWORD')  # MailgunのAPIキーかsmtpのパスワード
DEFAULT_FROM_EMAIL = 'email@infolink.dev'  # 送信元メールアドレス

API

API keyは右上の自分のアカウントのドロップダウンメニューから api securityに行って、Mailgun API keysの add new keyからkeyを作成。

その時しかkeyはひょうじされないので、メモするか今すぐコードに書こう。忘れたら、新しいapi keyを作って、それを使う。

smtp

別に隠さなくてもいいと思うけど、一応。

sendingからdomain settingsへ行って、画像のように。
reset passwordで新しいkeyを取得。

smtpとapiの違い

smtpはアドレスごとで、apiはすべてのアドレスで使える。

サンドボックス環境から抜け出す

サンドボックス環境だと、自分のアカウントのメールアドレスにしか送れません。
送れるようにするには、独自ドメインとそれを認証しなければならない。

さっきの画像のdomainsで、add new domainでmg.yourdomainを入力。僕の場合、mg.infolink.dev。
サブドメインのほうがいいと言われたけど、なんでなのかはわからないです。

そのドメインをクリックして、使ってるレジストラーでtxtレコードなどを入力するだけ。どうすればいいかは書いてあるので、それに従ってレコードを追加してください。

domainsを押して、チェックマークがついていれば使えます。

infolinkで、間違った情報を知る

infolink.devを使えば、間違いが指摘されたときに通知を受け取れます

infolink.devの詳細
https://zenn.dev/pandakun/articles/dc4886a996cb98

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?