我在其中一条路线中使用了非id参数,如下所示:
get 'users/:attribute' => 'users#special_action', :as => named_route
我喜欢命名的路线,我希望我能做到:
named_route_url(@user)
获取网址,其中:attribute
部分被user.attribute
替换。
令我惊讶的是,路由使用了User.to_param
提供的内容。
虽然我可以理解这是一个惯例,但我想知道是否有办法说我想在我的路线中使用属性x
。
(场景的例子,如果我想重命名属性,但保留路线,我可以在路线中重命名,这可能是有益的。)