Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
63
Help us understand the problem. What is going on with this article?
@lasershow

ViewやヘルパーやControllerにおいて、コントローラ名やアクション名で条件分岐する方法

More than 3 years have passed since last update.

Viewやヘルパーで、コントローラー名やアクション名で条件分岐する方法ないのかなー、と思って調べてみたらありました。 :laughing:
rails(ruby)の便利さには、びっくりですね。

(View・ヘルパー)コントローラー名で条件分岐する方法

railsにおいてコントローラー名はcontroller.controller_nameで取得することができます。なんと便利なんでしょう。

【使用例】
例えば、contactsコントローラーに使うとしたら、こんな感じ

if controller.controller_name == "contacts"
  puts "お問い合わせありがとうございます。"
else
  puts "ご利用ありがとうございました。"
end

(View・ヘルパー)コントローラーのアクション名で条件分岐する方法

同様にcontroller.action_nameで取得できます。

【使用例】
こちらもcontactsコントローラーで使用してみます。contactsコントローラーには、newアクションとcreateアクションがあります。

case controller.action_name
when "new"
  puts "まだお問い合わせは完了していません"
when "create"
  puts "お問い合わせありがとうございました。"
else
  puts "申し訳ございませんが、最初からやり直してください"
end

(Controller)コントローラー名で条件分岐する方法

コントローラーでは、controller_nameで取得できます。

(Controller)アクション名で条件分岐する方法

コントローラーでは、action_nameで取得できます。

何か修正点・改善点・疑問点などありましたら頂けると嬉しいです。 :smile:

63
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
lasershow
Software Engineer (Machine Learning) twitter: https://twitter.com/akiwo_shimizu

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
63
Help us understand the problem. What is going on with this article?