【问题标题】:Add specific user roles to a specific model instance using CanCan and Rolify使用 CanCan 和 Rolify 将特定用户角色添加到特定模型实例
【发布时间】:2013-01-16 21:51:00
【问题描述】:

由于我可能通过 Rails 应用程序工作,所以我还有一个问题。该应用程序允许用户通过 Devise 进行注册。这样可行。在应用程序中,用户可以创建自己的名为 Circles 的组。这样可行。现在我希望用户能够将其他用户添加到他们的圈子。这不起作用。

到目前为止,我已经实现了 CanCan 和 Rolify。我可以从 User 模型为用户分配角色,所以我知道设置工作正常。我无法弄清楚用户如何将另一个用户添加到特定的圈子。我查看了 SO 并找到了与我想在这里做的事情接近的事情:Authorization in Rails 3.1 : CanCan, CanTango, declarative_authorization?,但这不适用于我的情况。

我知道如何使用 CanCan 在应用程序级别添加角色。我想要做的是在特定的 Circle 实例中添加一个角色。并非所有用户都可以访问圈子,只有那些被添加的用户。

如果有人有任何想法,我愿意接受其他方式来实现这一点。最好的设置方法是什么?

编辑

我想出了如何从 rails 控制台执行此操作。 user.add_role :moderator, Circle.find(22) 这完美地工作并保存到数据库中。我怎样才能通过视图中的表单来做同样的事情?

【问题讨论】:

    标签: ruby-on-rails devise cancan


    【解决方案1】:

    使用控制器....它会在您提交表单后添加角色!在控制器中,您可以只使用类方法,例如:) 让我知道我是否需要更明确! 干杯

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-06
      • 2012-08-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多