script/consoleでルート設定を確認する方法。
$ ./script/console Loading development environment (Rails 2.3.2) >> irb ActionController::Routing::Routes # irbをirbから実行することにより、デフォルトオブジェクト(self)をルートセットに設定する。(コマンドを実行するときの入力の手間が省ける。) >> generate(:controller => "posts", :action => "show", :id => "1") # 生成 => "/posts/1" >> recognize_path("/") # 認識 => {:action=>"index", :controller=>"top"} >> recognize_path("/posts", :method => :get) => {:action=>"index", :controller=>"posts"} >> recognize_path("/posts", :method => :post) => {:action=>"create", :controller=>"posts"}
script/consoleで名前付きルートの解明
※ Rails3以降では、
include Rails.application.routes.url_helpers
>> include ActionController::UrlWriter # 名前付きルートをテストするためにインクルード => Object >> login_path => "/login" >> default_url_options[:host] = "example.com" # _urlでエラーにならないようデフォルトのホスト値を設定 => "example.com" >> login_url => "http://example.com/login" >> ActionController::Routing::Routes.recognize_path(login_path) => {:action=>"new", :controller=>"sessions"}