【发布时间】:2016-04-23 02:23:37
【问题描述】:
对于我的 rails 应用程序,关联如下:
- 一个用户有很多书签,属于用户。
- 一个用户有很多朋友。
- 一个用户有很多提醒。
- 一个用户有很多 cmets。
- 一个书签有许多 cmets。
- 评论属于用户,属于书签。
- 友谊属于用户。
- 提醒属于用户
我的 routes.rb 文件:
Rails.application.routes.draw do
root 'welcome#index'
get 'home', :to => 'home#index'
get 'searchApis', :to => 'home#searchApis'
devise_for :users, :controllers => { registrations: 'registrations' }
resources :users, shallow: true do
resources :bookmarks, except: :new
resources :friendships, only: [:index, :show, :destroy]
resources :reminders
end
resources :bookmarks, shallow: true do
resources :comments
end
end
我是否正确地写出这些路线?
当我rake routes 时,我收到了两次bookmarks#index,所以我很困惑。其中一个的前缀是bookmark,另一个是bookmarks。为什么会这样?
据我了解,应用程序不需要查看索引中的所有书签,因为它们只对创建它们的用户可见。但是,我希望提醒对用户的朋友可见。
如果可能的话,我希望得到清理路线的建议。我真的怀疑我这样做是否正确。
【问题讨论】:
-
另外,我觉得 user_bookmarks_path 和 bookmarks_path 是多余的,我不知道如何解决。
-
想想您希望书签索引如何显示——您希望它围绕用户的书签还是站点范围的书签?
标签: ruby-on-rails ruby routing nested-routes