2012-07-17 84 views
0

我正在使用CanCan gem的Rails 3。型號UsersNetworkshas_many :through => Roles。這部分工作正常。嵌套資源vs /和/或CanCan?

目前我正在使用CanCan,因此如果用戶有權訪問網絡,它將只顯示網絡。這也很好。

我知道CanCan可以與嵌套資源結合使用,但是具有/ users/1/networks冗餘的路由嗎?可選的?鼓勵? REST風格的? Rails的-Y?有沒有具體的理由來擁有它?我只希望用戶能夠看到他們有權訪問的網絡,但不確定嵌套的資源是否是更恰當的方式,如果我已經將網絡索引用作過濾器。

回答

0

對我而言,路線應該在使用您的應用程序的人的上下文中有意義。如果你以可以CRUD路由的管理員身份登錄,我希望通過/ networks完成此操作,因爲所有與路由相關的事情都將發生在這裏。

/networks   #list all networks 
/networks/new  #add network 
/networks/1   #show network 
/networks/1/edit  #edit network 

從用戶的角度來看,是有意義的,他們可以添加/刪除自身到新網絡或查看他們所在的網絡。

/users/1/networks   #show networks user is in 
/users/1/networks/add  #add self to network 
/users/1/networks/delete #remove self from network