Mailerの動作確認ができるgem 'mailcatcher'

こんにちは!kossyです!




本日気になったニュースはこちら
www.tv-tokyo.co.jp

最近は小規模のM&Aがサラリーマンの間で話題になっているみたいですね。
TRANBIというM&Aマッチングプラットフォームの会社で、
会社の売買や事業承継なんかができるそうです。

普通のサラリーマンの方が会社を持つ手段として、起業だけではなく、
M&Aという手段もこれからどんどん注目されていきそうです。










さて、今回はRailsにおいて、ActionMailerでのメール送信機能の動作確認が
開発環境でできるmailcatcherというgemの使い方をブログに残したいと思います。




環境
Rails 5.1.6
Ruby 2.5.1
MacOS Mojave





mailcatcherのインストール

bundlerでインストールすると不具合が発生するらしいので(開発者が言ってます)、
ターミナルで、

$ gem install mailcatcher

と記述し実行します。

その後、config/environments/development.rbに、
「mailcatcherのSMTPサーバを利用する」という設定をアプリケーション側に追加します。

  # Don't care if the mailer can't send.
  config.action_mailer.raise_delivery_errors = false
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = { address: '127.0.0.1', port: 1025 }

次に、mailcatcherを起動します。

$ mailcatcher



Starting MailCatcher
==> smtp://127.0.0.1:1025
---省略---
==> http://127.0.0.1:1080
*** MailCatcher runs as a daemon by default. Go to the web interface to quit.

サーバーサイド側のMailerのコードは
Action Mailerの使い方 | 酒と涙とRubyとRailsと
Action Mailer の基礎 - Rails ガイド

こちらを参考にしてみてください。