質問: Railsの「current_page」を使って、現在いるページを調べたいと思っているのですが、 `rails s`でサーバーを起動して、 `rails c`でコンソールを起動。 そのコンソール上で`current_page?(root_path)`を実行させたところ、 `NameError: undefined local variable or method 'root_path' for main:Object from (pry):2:in ''` というエラーが出てしまい、current_pageを調べることができません。 どのように対応すれば「current_page」を調べることができるのでしょうか。 ちなみに、rootではrouter.rbに「root 'top#index'」で宣言してあります。
回答: railsの環境を読み込んでコードを実行するのはrails runnerだったと思いますがそれはまた別の話として。 rails sでrailsを動かしているプロセスとrails cでコンソールを立ち上げているプロセスはおそらく異なるので、current_page?で正しいcurrent_pageを取得できるとは思えません。 大抵のエディタにはデバッグモードがあると思うので、該当するコードで止めてデバッグコンソールからcurrent_page?(root_path)すれば期待した値が取れると思います。