用户角色:node.js express sequelize react.js
我正在使用关于bezkoder的本教程创建用户角色。但是,默认情况下,用户在注册期间被赋予角色:1[subscriber]。 我对很多这方面都不熟悉,所以我不确定需要做多少更改才能创建两个注册页面:一个将自动向角色1[subscriber]注册用户,另一个将自动向角色2[expert]注册用户 前端 后端 我认为该角色在控制器中被自动注册为1,但我甚至不确定这是记录该角色的地方。非常感谢您的帮助用户角色:node.js express sequelize react.js,node.js,reactjs,express,sequelize.js,Node.js,Reactjs,Express,Sequelize.js,我正在使用关于bezkoder的本教程创建用户角色。但是,默认情况下,用户在注册期间被赋予角色:1[subscriber]。 我对很多这方面都不熟悉,所以我不确定需要做多少更改才能创建两个注册页面:一个将自动向角色1[subscriber]注册用户,另一个将自动向角色2[expert]注册用户 前端 后端 我认为该角色在控制器中被自动注册为1,但我甚至不确定这是记录该角色的地方。非常感谢您的帮助 exports.signup = (req, res) => { // Save Us
exports.signup = (req, res) => {
// Save User to Database
User.create({
username: req.body.username,
email: req.body.email,
password: bcrypt.hashSync(req.body.password, 8)
})
.then(user => {
if (req.body.roles) {
Role.findAll({
where: {
name: {
[Op.or]: req.body.roles
}
}
}).then(roles => {
user.setRoles(roles).then(() => {
res.send({ message: "User was registered successfully!" });
});
});
} else {
// user role = 1
user.setRoles([1]).then(() => {
res.send({ message: "User was registered successfully!" });
});
}
})
.catch(err => {
res.status(500).send({ message: err.message });
});
};
在浏览了提供的前端教程之后,我想我可以将问题缩小到组件Authservice。它有一个名为register的方法: 因为当前用户注册时,您从不发送角色。因此,新用户总是以默认角色结束。如果希望在注册时为用户提供默认角色以外的其他角色,则必须将参数角色添加到axios.post函数中的config对象中。例如:
register(username, email, password) {
return axios.post(API_URL + "signup", {
username,
email,
password,
roles=[ "ROLE_ADMIN" ]
});
}
因此,您可以创建另一个注册页面,使用此修改后的注册功能,而不是默认的注册功能。非常感谢您的回复,这正是我需要知道的
register(username, email, password) {
return axios.post(API_URL + "signup", {
username,
email,
password,
roles=[ "ROLE_ADMIN" ]
});
}