Help us understand the problem. What is going on with this article?

Railsのdevelopment環境のメール送信でWe're sorry, but something went wrong.になった

More than 1 year has passed since last update.

はじめに

Qiitaに初めて投稿します。
Railsを勉強中で気になる点があり、ネットで探してもあまり情報が見つからなかったので投稿させていただきます。

発生したdevelopment環境でのエラー画面

development環境で出るエラー画面は以下のようなものしか見たことなかったのですが、

スクリーンショット 2018-03-05 1.55.25.png

今回は以下のようなエラー画面が発生しました。

スクリーンショット 2018-03-05 1.51.44.png

これってHerokuとかの本番環境で出る画面なのでは?
ログを見てみると、

Completed 401 Unauthorized in 45ms (ActiveRecord: 16.0ms)

と出力されていました。
他の部分も見てみると、直前までに行われていた更新処理は完了しており、その後のメール送信に問題がありそうでした。

何をしているか

  • 更新処理後にActionMailerでメールを複数人に送信している。

やったこと

Action Mailerの基本 | Rails日本語ドキュメント | Ruby STUDIO

2.3.3 メールの複数の宛先への送信
:toキーにメールのリストを設定することで、1つのメールを複数人に配信することが可能です。 (例: 新しく登録されたユーザーの情報を全管理者に伝えるなど) メールのリストは、メールアドレスの配列またはカンマ区切りの文字列を指定することが出来ます。

こちらを元にmailメソッド内の:toキーに複数のユーザーのメールアドレスをカンマで区切って設定しました。

❌ダメだったやつ

mail to: @user1.email, @user2.email

上記の注意書きをちゃんと読まず、mailの第二引数にメールアドレスを設定したためか、エラー(We're sorry, but something went wrong.)が発生しました。

⭕️よかったやつ

mail to: [@user1.email, @user2.email]
mail to: @User20130401  + "," + @user2.email

とりあえず上記のように書き換えて複数ユーザーにメールを送信することができるようになりました。

所感

原因自体は明確になっていないので、わかる人がいれば教えていただきたいです。

しかし、「We're sorry, but something went wrong.」は原因も掴みにくいので、なるべく赤いバーのエラー画面に出会いたいなと思った次第でした😅

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away