【Ruby on Rails】本番環境(production)と開発環境(development)で表示を分岐させる方法

こんにちは、nishi_talk(@nishi_talk)です。
開発をしていて本番環境と開発環境で表示や処理を分ける方法をご紹介します。




前提条件

  • ruby 2.5.1
  • Rails 5.2.0

本番環境だけに表示させる

Viewはこちら

<% if Rails.env.production? %>
  #本番環境だけ表示されるよ
<% end %>

Controllerとかはこちら

if Rails.env.production?
  #本番環境だけ表示されるよ
end

開発環境だけに表示させる

Viewはこちら

<% if Rails.env.development? %>
  #開発環境だけ表示されるよ
<% end %>

Controllerとかはこちら

if Rails.env.development?
  #開発環境だけ表示されるよ
end

おまけ

こんな書き方もあるよ。

if Rails.env == 'production'
  #本番環境だけ表示されるよ
end

rails環境が本番か開発科調べる方法はこちら。

$ rails console
irb(main):001:0> Rails.env
=> "development"

これで本番と開発を間違えた!みたいなことが無くなりそうですね。