コントローラー内のインスタンス変数は、
before_actionすればviewで使えますが、
viewから呼んだ場合は使えないようです。
ruby
1#コントローラー.rb 2before_action :test 3def test 4 @test = "てすと" 5end 6 7#ビュー.erb 8<% -p @test %> 9=> "てすと" 10 11 12#コントローラー.rb 13helper_method :test 14def test 15 @test = "てすと" 16end 17 18#ビュー.erb 19<% -test %> 20<% -p @test %> 21=> nil
何か良い方法はあるでしょうか?
アドバイス頂けますと幸いです。
【補足】やりたい理由
ビューから複数回メソッドを呼び出し、インスタンス変数を書き換えたいためです。
「同じインスタンス変数名なのに中身が変わっていると良くない」というのはあるのですが、
「このメソッドを他のアクションからも使いたいためビュー内に書いてローカル変数で使う、のではなく、コントローラー内に書きたい」
といった理由です。
