【问题标题】:Rails Routes - How to get nested IDs from URI PatternRails Routes - 如何从 URI 模式获取嵌套 ID
【发布时间】:2017-10-19 13:58:20
【问题描述】:

在我的路由器中,我嵌套了两个资源:

resources :servers do
  member do
    resources :maintenances
  end
end

导致URI模式如下:

         maintenance GET    /servers/:id/maintenances/:id(.:format)      maintenances#show

在maintenance_controller 的显示操作中,我想获得这些ID,例如:

@server = Server.find_by(params[:id])
@maintenance = Maintenance.find_by ???

我的问题是:如何从 URI 模式 http://localhost/servers/1/maintenances/1 访问我的 maintenance_controller 中的这两个 ID

【问题讨论】:

    标签: ruby-on-rails nested-routes


    【解决方案1】:

    试试这个

    resources :servers do
      resources :maintenances
    end
    

    然后你可以访问嵌套资源如下

    server_maintenance GET    /servers/:server_id/maintenances/:id(.:format)
    

    在你的控制器中

    @server = Server.find(params[:server_id])
    @maintenance = Maintenance.find(params[:id])
    

    有关在 rails 中路由的完整文档在 official docs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      • 2015-11-02
      相关资源
      最近更新 更多