map.resources :document
添加这条路线后,我现在有一个自动的“ edit_document_path
”。我想把它改成“ annotate_document_path
”?如果我添加新的视图和控制器方法,它会自动选择它吗?它如何从资源路径转换为这些“路径”符号?
map.resources :document
添加这条路线后,我现在有一个自动的“ edit_document_path
”。我想把它改成“ annotate_document_path
”?如果我添加新的视图和控制器方法,它会自动选择它吗?它如何从资源路径转换为这些“路径”符号?
贾罗德是正确的。map.resources
默认情况下只添加 RESTful 路由。要获得您想要的路线,该行应为
map.resources :document, :member => {:annotate => :get}
:member 表示此路由将具有关联的 document_id,:annotate 将是 url 的一部分,并且 :get 是用于访问此路由的 HTTP 方法。
通过这一行,您应该可以访问annotate_document_path(document_id)
辅助方法。
map.resources 添加 RESTful 路由。您正在寻找命名路线。更多信息在 RailsGuides。