我的config/routes.rb
文件中有以下路线:
resources :employees do
get 'dashboard'
get 'orientation'
end
employees
指处理标准 RESTful 操作的常规资源。dashboard
并且orientation
是我目前所说的作用于Employee
实例的“自定义操作”。如果我的术语混淆了,dashboard
并且orientation
真的是别的东西,我深表歉意。这些自定义操作对 URL 的响应如下:
http://myhost/employees/1/dashboard
即它们是“成员”行为,非常类似于show
等edit
。
无论如何,这一切都很好。诸如show
on等常规操作通过EmployeesController
获取关联的 ID 。但是,用这个当前的结构,不得不改用。这并不太难处理,但确实会导致一些额外的代码复杂性,因为我期望的常规 s不适用于这两个操作。Employee
params[:id]
dashboard
orientation
params[:employee_id]
before_filter
params[:id]
如何让路由系统以与等params[:id]
相同的方式填充这些自定义操作的 ID show
?我已经尝试了各种方法member
而不是get
这些操作,但还没有任何东西可以按照我想要的方式工作。这个应用程序是使用 Ruby on Rails 3.2 构建的。