該当コードを調べてみるシリーズ
環境
$ bin/rails -v Rails 5.2.2
該当コード
rails/railties/lib/rails.rb
のここらへん
# Returns the current Rails environment. # # Rails.env # => "development" # Rails.env.development? # => true # Rails.env.production? # => false def env @_env ||= ActiveSupport::StringInquirer.new(ENV["RAILS_ENV"].presence || ENV["RACK_ENV"].presence || "development") end
読み取れること
production?
などができるようにActiveSupport::StringInquirer.new
をしている- 値に関してはいずれかの値を取る
- 環境変数
RAILS_ENV
を見ている - 上記が存在しない場合は
RACK_ENV
を見ている - それでも何もない場合は
development
- 環境変数