LoginSignup
2
0

More than 5 years have passed since last update.

RailsのHelperでControllerによって条件分岐させたい時の解決法

Posted at

背景

人のコードをリファクタリングしてたら、複数のViewファイルで似たような部分があった。
まとめてHelperにぶち込んでやろうと思った。
ただ、Viewに紐づくControllerによって微妙に表現が異なっていたのでウッ

解決法

controller.controller_nameController名を取得できた。
おそらく、params的なものに乗ってhelperまで情報が来てるのだろう(適当)
Helper内でControllerによって条件分岐させたらできた!

具体的には下記のイメージ。

(app/helper/application_helper.rb)

module ApplicationHelper
  def hogehoge_helper
    if controller.controller_name == "blogs"
      # blogsコントローラに紐づくViewでやりたい処理
    elsif  controller.controller_name == "topics"
      # topicsコントローラに紐づくViewでやりたい処理
    else
      # それ以外のコントローラに紐づくViewでやりたい処理
    end
  end
end
2
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
2
0