コンソールでのルートの解明

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"}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください