Rails環境が開発・テスト・本番のどれか調べる

Railsの現在の環境が開発・テスト・本番のいずれであるか調べるには、Rails.envを利用して調べる事が出来る。

まずはアクション内で環境によって処理を分ける場合。

case Rails.env
when "development"
  # 開発環境のコード
when "test"
  # テスト環境のコード
when "production"
  # 本番環境のコード
end

また真偽値を返すメソッドも用意されており、テンプレート内で利用する場合。

<% if Rails.env.development? %>
  開発環境のテキスト
<% elsif Rails.env.test? %>
  テスト環境のテキスト
<% elsif Rails.env.production? %>
  本番環境のテキスト
<% end %>

単純に現在の環境を知りたい場合に上記のようにコードを書いて調べてみるのは面倒である。そこでRailsのコンソールを利用すると簡単に調べる事ができる。

コンソールを起動する。

$ bin/rails console

プロンプトで”Rails.env”と入力すれば値を知る事が出来る。

irb(main):001:0> Rails.env
=> "development"
スポンサーリンク