给用户分配角色情景:
显示出所有角色,当前选中用户拥有的角色是选中状态
分析:
1.查询出所有角色
select * from sys_roles
2.根据用户id查询出已选择的角色
使用左外连接可以把1和2的过程进行合并,不必要分开做两次查询
左外连接 left join
特点:即便右边中找不到关联数据,左表的数据也会全部显示,关键是要考虑把谁作为左表
select
r.roleName,
r.roleId,
u.userId
from
sys_role r left join sys_user_role u
on r.roleId = u.roleId
And u.userId = 2
这里不用where当条件,如果用where会有问题
如下:
对于多表联合查询出的结果要创建一个对应的model对象,页面可以根据user_id有值来确认勾选