什么是url_for在Rails的相反?一个函数,它的路径,并生成解释路线?
-
19-09-2019 - |
题
大脑稍炒....我如何获得的哈希:控制器和:从RELATIVE_PATH行动
这基本上是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
其他提示
通过滑轨3的最佳方式是使用
Rails.application.routes.recognize_path('/posts/1/edit')
不隶属于 StackOverflow