【发布时间】:2012-09-10 06:38:09
【问题描述】:
我之前也问过一个与此主题相关的问题,借助该问题,我找到了我想要的名称:“bound parameters”。
通过向routes.rb 添加一个成员,我设法创建了一个类似“user/:id/dosomething”的路由。但是,这种类型的 URL 并不是我想要的解决方案。
我的问题是,您如何提供 'user/dosomething/:id' 以匹配操作用户的 dosomething 操作和 id 作为参数发送?
这里是the section I’ve read 为了得到这个想法:
3.1 绑定参数
设置常规路线时,您需要提供一系列符号 Rails 映射到传入的 HTTP 请求的一部分。其中两个符号 是特殊的:
:controller映射到您的控制器的名称 应用程序,:action映射到该应用程序中的操作名称 控制器。例如,考虑这条路线:get ':controller(/:action(/:id))'如果
/photos/show/1的传入请求被此路由处理 (因为它没有匹配文件中任何先前的路由),那么 结果将是调用PhotosController的显示操作,并且 使最终参数"1"可用作params[:id]。这条路线 还将把/photos的传入请求路由到PhotosController#index,因为:action和:id是可选的 参数,用括号表示。
【问题讨论】:
标签: ruby-on-rails rails-routing