【Ruby on rails】ローカルで疑似メール送信!letter opener導入
メール送信のテストをlocalのdevelopment環境でやりたい!!
疑似メールサーバを簡単に設定できる便利Gem ”Letter opener”の使い方を紹介します。
letter openerの動きは、下記demoサイトでご確認ください(メール送信したあと、「Click here to see sent mails」でメールの確認ができます)
letter-opener-web.herokuapp.com
1.gem 'letter_opener_web'(疑似メール送信用Gem)と'config' (設定値管理用Gem)をGemfileに追加
gem 'letter_opener_web', '~> 1.0
gem 'config'
2.bundle installする
3.Gem ’Config’の設定を行う
rails g config:install
上記をコンソールで実行すると、下記ファイル類が生成される
create config/initializers/config.rb
create config/settings.yml
create config/settings.local.yml
create config/settings
create config/settings/development.yml
create config/settings/production.yml
create config/settings/test.yml
append .gitignore
4.config/environments/development.rbにメール送信時の値を設定
config.action_mailer.delivery_method = :letter_opener_web
config.action_mailer.perform_deliveries = true
config.action_mailer.default_url_options = { host: Settings.host_name }
5.4.のSettings.host_nameを、3.で生成されたconfig/settings/development.yml内に記載
host_name: 'localhost:3000' #local環境に合わせたホスト名を記載
6.config/routes.rbに、送信メール確認用のルートを設定(下記で、上記ホスト名/letter_openerのパスを直打ちすると、(localhost:3000/letter_openerなど)送信メール確認画面が表示される)
mount LetterOpenerWeb::Engine, at: "/letter_opener" if Rails.env.development?
以上ですー!
おやすみなさいいいいいいぃぃぃぃ