Ruby 关于 Rails 浅层嵌套资源

Ruby on Rails shallow nesting resources

我正在尝试找出实现浅路由嵌套的 Ruby-on-Rails 方法,这使我能够跟踪最顶级的资源。

假设我们在 config/routes.rb 中设置了浅层嵌套路由:

resources :article, shallow: true do
  resources :comments
end

resources :comments, shallow: true do
  resources :likes
end
     

你怎么说从 comments/3/likes 重定向到 /articles/1/comments,因为 article_id 在参数中不可用,所以最好的方法是将 article_id 放在会话哈希(当通过控制器中的回调显示文章时?)并以这种方式检索它?我试过查看 Rails 指南,虽然这解释了浅层资源嵌套,但并没有超出此范围。

假设一篇文章有​​很多条评论,一条评论属于一篇文章,你可以通过评论访问这篇文章:

comment = Comment.find(params[:comment_id])
comment.article_id