我喜欢rolify(https://github.com/rolifycommunity/rolify(API,想在我的应用中使用它,但是在我的docs或教程中找到任何问题这将使我能够定义一个范围范围的角色[:councel_id]&&资源实例。有没有人以这样的方式使用了Rolify,并且可以提供有关如何设置的建议?
理想情况下,这看起来像
user.add_role :moderator, Notes.where(account_id: params[:account_id])
您可以在特定实例中添加一个角色,如下所示:
note = Notes.where(account_id: params[:account_id].first
user.add_role(:moderator, note)
我们在生产中有一个多租户铁轨应用程序,该应用程序用作房客,并像您所描述的那样用用例。有User
帐户,它们独立于任何租户,每个用户都可以具有多个Membership
s,因此是多个租户的成员。
每个用户会员资格都可以具有单独的角色。对于较低的排名角色,我们需要允许仅访问更多特权成员可以分配给他们的某些实例。
一个好的多租户宝石应该照顾您只想仅需一个特定组织的所有铁路模型,并阻止任何成员访问组织B。params[:account_id]
手动,当您要定义一个范围范围为资源实例的角色时。