【问题标题】:Nested Resources vs/and/or CanCan?嵌套资源与/和/或 CanCan?
【发布时间】:2012-07-17 21:44:49
【问题描述】:

我正在使用带有 CanCan gem 的 Rails 3。模型UsersNetworkshas_many :through => Roles。这部分工作正常。

目前我正在使用 CanCan,因此在 /networks 页面上,它只会在用户有权访问时显示网络。这也很好用。

我知道 CanCan 可以与嵌套资源结合使用,但是 /users/1/networks 的路由是多余的吗?选修的?鼓励? RESTful?导轨-y?有什么特别的理由吗?我只希望用户能够看到他们有权访问的网络,但如果我已经将网络索引用作过滤器,我不确定嵌套资源是否是更合适的方法。

【问题讨论】:

    标签: ruby-on-rails cancan nested-resources


    【解决方案1】:

    对我来说,路线在使用您的应用程序的人的上下文中应该是有意义的。如果您以可以 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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      相关资源
      最近更新 更多