在过去的几个月里,我才刚刚开始使用 Rails,并且在我目前的项目中遇到了我的第一个真正的障碍,我一直无法找到答案。
我的目标是对哪些用户角色/组(由 Rolify 生成并由 Pundit 控制)实施一些细粒度的控制,这些用户角色/组可以通过 Upmin 管理控制台访问特定类别、子类别或文章。一个类别/文章应该能够允许多个用户角色/组访问其内容。
此处的答案演示了将角色范围限定为模型的特定实例,这很好,但我也希望通过我的应用程序管理控制台中的简单复选框表单从模型实例中进行控制(感兴趣的人可以使用 Upmin_admin)。
除了在管理控制台中创建一个类别/文章实例视图部分之外,我认为没有太多可以产生此功能是否正确,该视图列出了该特定类别/文章的所有角色/组及其当前 CRUD 设置实例。还是我错过了一些中间步骤?
向正确方向轻推将不胜感激。谢谢!
我的应用程序的一些背景:
在我的 Web 应用程序中,我嵌套了资源、类别、文章和评论,如下所示:
resources :categories do
resources :articles do
resources :microposts, only: [:new, :create, :edit, :destroy
end
end
(我知道嵌套资源比一层更深并不是最佳实践,但是我刚刚跳上了 Rails 火车, :shallow = true 并没有提供我想要的结果。)
类别充当由 Awesome Nested Set 提供的嵌套集,并且能够“保存”类别和文章(以及扩展评论)。
用户通过使用 Devise 的 LDAP 服务器进行身份验证 - 我将在不久的将来对其进行配置,以自动将用户分配到正确的组/角色。