我想在我的 Rails 项目中设置一个嵌套路由,如下所示:
# config/routes.rb
DemoApp::Application.routes.draw do
namespace :api, defaults: {format: :json} do
namespace :v1 do
resources :places, only: [:index]
resources :users do
resource :places
end
end
end
devise_for :users, controllers: { sessions: "sessions" }
ActiveAdmin.routes(self)
end
我使用RABL 模板来呈现 JSON 内容。可能是我误解了child
RABL 中元素的用途。据我了解,它们不会将我引向如下所示的 RESTful 路径。另一方面,请告诉我 RABL 是否不支持嵌套资源。
如何为嵌套路由输出 JSON,例如 ... ?如何编写与路线匹配的 RABL 模板users/:id/places
?
http://localhost:3000/api/v1/users/13/places.json
我不想显示用户信息。应该无法通过以下路径检索用户数据:
http://localhost:3000/api/v1/users/13.json
http://localhost:3000/api/v1/users.json
在项目中我使用CanCan 1.6.9。并设计 2.2.3。