迭代5:用户访问控制
在之前的迭代中,我们添加了创建应用程序新用户的功能。但目前还无法将用户分配到特定项目中,也不能为他们分配项目内的角色。现在采用了基于角色的访问控制(RBAC)方法,接下来要构建新功能以实现这些目标。
实现步骤
为达成目标,需执行以下操作:
1. 在项目模型类中添加获取角色选项的方法 :采用测试优先的方法,在 Project 模型类中添加一个公共静态方法 getUserRoleOptions() ,该方法使用认证管理器的 getRoles() 方法返回有效的角色选项列表,用于填充向项目添加新用户表单中的角色选择下拉字段。
2. 添加关联用户到项目的方法 :同样采用测试优先的方法,在 Project 模型类中添加一个新的公共方法 associateUserToProject($user) ,将用户与项目关联起来,直接插入到 tbl_project_user_assignment 表中,建立用户与项目的关联。
3. 添加判断用户是否已在项目中的方法 :使用测试优先的方式,在 Project 模型类中添加新的公共方法 isUserInProject($user) ,确定用户是否已与项目关联,在表单提交的验证规则中使用该方法,避免重复添加用户到项目。
4. 创建新的表单模型类
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



