Railsの中なurl_forの反対は何ですか?パスを受け取り、解釈経路を生成する機能?
-
19-09-2019 - |
質問
コントローラと::
脳は揚げ少しです....どのように私はのハッシュ得るのですか?相対パスからアクションを
これは、基本的なurl_forの反対です。以下の例では、「some_functionは」私が探している謎の関数名がある...私は覚えているか、ドキュメントでそれを見つけることができるように見えることはできません、それは簡単です知っています。
これと同様ます:
some_function('/posts/1/edit')
=> {:controller => 'posts', :action => 'edit', :id => '1'}
解決
RSPECがルートに方法と経路を解析するアクションコントローラのルーティング方法を使用する方法「params_for」を有している。
かれらは少しより堅牢これよりもですが、それはつまるところ
def params_for(path, method)
params = ActionController::Routing::Routes.recognize_path(path, :method => method)
end
他のヒント
のRails 3で最良の方法は、
を使用することですRails.application.routes.recognize_path('/posts/1/edit')
所属していません StackOverflow