使用复合键Rails RESTful路由

fot*_*nus 10 rest routes ruby-on-rails

我有一个非典型的Rails应用程序,需要一个表由两个值的复合键索引.使用RESTful服务添加两个值的复合键的正确方法是什么?

如果可能,请指向参考.

fgu*_*len 4

我进行了大量的测试才想出了一个几乎“优雅”的解决方案:

scope "/users/:key1/:key2" do
  resource :users, :path => "" do
    resources :posts
  end
end
Run Code Online (Sandbox Code Playgroud)

它生产:

    users_posts GET    /users/:key1/:key2/posts(.:format)              posts#index
                POST   /users/:key1/:key2/posts(.:format)              posts#create
 new_users_post GET    /users/:key1/:key2/posts/new(.:format)          posts#new
edit_users_post GET    /users/:key1/:key2/posts/:id/edit(.:format)     posts#edit
     users_post GET    /users/:key1/:key2/posts/:id(.:format)          posts#show
                PUT    /users/:key1/:key2/posts/:id(.:format)          posts#update
                DELETE /users/:key1/:key2/posts/:id(.:format)          posts#destroy
          users POST   /users/:key1/:key2(.:format)                    users#create
      new_users GET    /users/:key1/:key2/new(.:format)                users#new
     edit_users GET    /users/:key1/:key2/edit(.:format)               users#edit
                GET    /users/:key1/:key2(.:format)                    users#show
                PUT    /users/:key1/:key2(.:format)                    users#update
                DELETE /users/:key1/:key2(.:format)                    users#destroy
Run Code Online (Sandbox Code Playgroud)