LoginSignup
0
0

More than 3 years have passed since last update.

Railsでdotenv-railsを中途半端に入れたらちゃんとenv読み込んでくれなかった

Posted at

はじめに

ホームページを制作している途中で、問い合わせ機能を作りたくなった。
ActionMailerを使ってsmtpを使ってGmailに送信する時に起きたエラーを解消した話。

結論として、
・メールサーバの設定等はデフォルトのconfig/environments
・コード内で使用する環境変数はdotenv-rails
で使い分けることにしました(そもそもそういう使い方をすべきなのか...?)

環境

Ruby 2.7.0
Rails 5.1.6

やったこと

Rails5で確認画面経由のメッセージ送信フォームを実装する を参考にActionMailerを導入

②環境変数を追加するために以下を追加

config/environments/development.rb
DEFAULT_EMAIL = '******@gmail.com'
DEFAULT_EMAIL_PASSWORD = '****************'

③ここで「ちゃんと環境変数を切り分けたいな」と思いdotenv-railsを導入してconfig/environmentsを削除

④そしたらこのエラー。
 SMTP From address may not be blank: nil
 メールサーバー設定の記述はしていたのでenvをちゃんと読み込めていないんだなと。

⑤あとは結論の通り。
 デフォルトはdevelop.rbで、追加の環境変数は.envで解決。

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