【发布时间】:2014-05-15 19:36:55
【问题描述】:
我正在构建一个 JSON api,它将成为另一个 rails 站点的数据源(使用 devise 进行身份验证),并且具有基本的令牌身份验证工作。 API 还将负责向移动应用程序提供数据。
在 API 中,我有如下模型: 用户、书籍和章节 一个用户 has_many :books,一本书 has_many :chapters。在我的路线文件中,我有
shallow do
resources :users do
resources :books do
resources :chapters
end
end
end
这会导致如下路线:
/users/:user_id , /users/:user_id/books
/books/:book_id , /books/:book_id/chapters
/chapters/:chapter_id
即“浅路径”,而不是 /users/:user_id/books/:book_id/chapters/:chapter_id
我想知道我应该如何验证这些,因为章节不属于用户。这不仅仅是检查 user_id 的情况(因为这是书籍模型的属性)。
# chapters_controller
def show
@chapter = Chapter.find(params[:id])
end
然后我是否必须获取@chapter 的书,然后检查它的 user_id? 不知怎的,我觉得不太对劲。我走错方向了吗?
感谢阅读!
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-4