Ruby on Rails4でdevise 4:メール設定(開発環境:letter_opener)
mailcatcherと違いメールファイルを/tmp/letter_opener/配下に格納するletter_openerを使ってみます。
https://github.com/ryanb/letter_opener
letter_openerインストール
/Gemfileを修正(development用にしてみた)
+gem "letter_opener", :group => :development
インストール実行
$ bundle install --path vendor/bundle
メール設定追加
/db/migrate/YYYYMMDDHH24MISS_devise_create_users.rbと/app/models/user.rbはmailcatcherと同じなので、 一つ前の記事を参照。 なので、違うやつだけ。
/config/environments/development.rbを修正 # Don't care if the mailer can't send. config.action_mailer.raise_delivery_errors = false # ↓deviseのメール送信設定 + config.action_mailer.default_url_options = { host: 'localhost:3000' } # ↓の送信方法にletter_opnerを設定 + config.action_mailer.delivery_method = :letter_opener
設定の反映
$ bundle exec rake db:migrate:reset
動作確認
railsを起動してsignupすると送信されたメールが確認できます。
Webインターフェースのletter-opener-webを試す
/Gemfileを修正(development用にしてみた)
+gem "letter_opener_web", :group => :development
インストール実行
$ bundle install --path vendor/bundle
/config/routes.rbを修正
+ if Rails.env.development? + mount LetterOpenerWeb::Engine, at: "/letter_opener" + end
railsを起動して以下URLにアクセス http://localhost:3000/letter_opener
これはこれで楽だなー。