若依框架注册新用户,且赋角色
若依框架注册新用户,且赋角色,若依官网1、如何开启注册功能开启前端注册开关。不管使用下那种方式开启注册功能,首先,先在前端里面views下找到login.vue,将启注册开关先给设置为true,保存重启即可。如下图2、两种开启新增用户的方法使用数据库开启,在数据库找到sys_config表打开,如下图,将config_key为sys.account.registerUser的config_valu
·
若依框架注册新用户,且赋角色,
1、如何开启注册功能
- 开启前端注册开关。不管使用下那种方式开启注册功能,首先,先在前端里面views下找到login.vue,将启注册开关先给设置为true,保存重启即可。如下图
2、两种开启新增用户的方法
-
使用数据库开启,在数据库找到sys_config表打开,如下图,将config_key为sys.account.registerUser的config_value的值改为true刷新即可
-
或者通过web端开启当然本质上都是从数据库开启,如图,找到系统管理/参数设置,找到用户注册,点击修改,将参数键值从false改为true刷新即可,
2、在用户创建的时候给用户分配角色
无论那个方式,其都是向user提供了一个角色id使其向用户和角色关联表插入一条数据,只要保证你提供的角色id无误即可。
方式1 (不推荐)
我这里使用了比较简单的方法,这里我的思路是当用户被创建时,对sys_user_role表做操作,增加用户id和角色id(角色提前要配置好(在用户管理配置)),这样只是固定角色(新注册的用户的角色都一样,比如说都为普通用户)。
我的xml文件(我这里让新注册的用户角色都为2)然后再在实现层SysUserServiceImpl.java中在registerUser方法中调用新增角色方法即可完成。
方式2(推荐)
实现方式和第一种一样的,只需要在registerUser需改;
/**
* 注册用户信息
*
* @param user 用户信息
* @return 结果
*/
@Override
@Transactional
public boolean registerUser(SysUser user)
{
int res = userMapper.insertUser(user);
// 默认user.getUserId()就可以获取到userId, mybatis: <insert id="insertUser" useGeneratedKeys="true" keyProperty="userId">
insertUserRole(user.getUserId(),new Long[]{2L});
// 若是你的user.getUserId() = null,就用下面这个
// insertUserRole(selectUserByUserName(user.getUserName()).getUserId(),new Long[]{2L});
return res > 0;
}
更多推荐
已为社区贡献2条内容
所有评论(0)