我想在我的ruby on rails应用程序中实现基于级别的访问控制。 就像那里,较低级别的用户将无法访问其父级的数据。 实施例
Main Admin | |___ Sub Admin1 | | | | | |___ SA1_USER1 | | | |___ SA1_USER2 | | | |___ Sub Admin2 | |___ SA2_USER1 | | | |__End_user1 | |__End_user2 | |___ SA2_USER2
在上面的结构中说每个用户都可以创建一个记录。但是会根据层次结构查看记录。 像Main Admin一样可以访问所有记录,Sub Admin1可以访问self,SA1_user1和sa1_user2等创建的记录。
是否有任何好的插件可以在轨道上的ruby中实现它?
谢谢, PraWin。
答案 0 :(得分:1)
我不知道插件,但写自己并不是那么难。你只需要在每个创建的记录上都有一个owner_id,你希望人们访问,每个用户都有一个父用户,然后你会为user.is_ancestor_of编写一个模型方法? record.owner在用户尝试访问记录的任何时候进行检查。