我正在Rails上开发一款应用程序,并且我达到了我不知道什么是我的休闲场景的最佳解决方案。到目前为止,我可以创建用户,创建项目,关联用户(类似于FB),我可以邀请用户访问我的网站,现在我希望允许用户对他们创建的项目提供不同级别的访问权限,给其他用户(与github类似)。另外,在创建帐户后,用户将获得superadmin的角色,就像他们将能够管理他们的项目或将项目分配给他们的同事。那么这将是我在cancan和声明式授权之间的最佳选择。如果我将使用cancan或声明性授权,是否还需要一个将存储user_id,role_id和project_id的表?Rails,Devise,CanCan或Declarative授权
谢谢
我会更好地解释我的问题。 到目前为止,我有能够创建项目的用户(与devise)。因此,如果user1创建项目A并且项目BI希望他能够为项目A分配具有角色admin的user2,并且在项目B上具有主持人角色的user2。 我在创建UserRoleProject链接表时想到了,理念?或者,如果不是,请帮助我一些指针。
该操作将类似于User1从列表user2中选择,从另一个列表(user1创建的)中选择一个项目,然后选择user2在该项目上的角色。
任何用户将能够在他们的项目上执行相同的操作。 也将有N个项目和n个用户和3个访问级别(管理员,版主,来宾)
谢谢