您好我是NodejS的新手并且还在学习,所以我可能会犯错,我正在尝试通过编写代码来学习它,而且我来自java背景。 Asyc功能对我来说仍然是新手。
这是我的问题
我想从我的代码中为每个用户分配user_id。
.post('/register', function (req, res, next) {
var username = req.body.uname;
var password = req.body.psw;
var email = req.body.uemail;
var fullname = req.body.fullname;
var user_id = sql_counts.sql_count()+1;
console.log('Your user id is'+user_id);
sql_connection.User.create({
username:username,
password:password,
email:email,
user_id:user_id
},function (err) {
if(!err){
console.log('Successful');
res.redirect('/registrationComplete');
}else{
console.log('Error creating');
}
});
});
这是我的sql_count函数:
function sql_count() {
sql_connection.User.count().then(function (err) {
initCounter =err;
});
return initCounter;
};
我想了解更多关于回电的信息,因为这对我来说是非常新的和令人困惑的。任何人都可以建议一些材料,链接,视频......虽然它在开始时似乎是理解我在尝试使用它时根本不理解它。还有如何将值从回调函数返回到outter函数?
说
在上面给出的代码中,如何将'then'部分的值返回到外部函数sql_count()?
答案 0 :(得分:0)
使用 MYSQL AUTO_INCREMENT 功能为每个新用户(即每个新行)创建一个新的user_id,同时插入如下
CREATE TABLE USERS( user_id INT NOT NULL AUTO_INCREMENT);
欢呼声
对于回调和承诺结帐this video以及最新的等待/异步功能this video
答案 1 :(得分:0)
你可以在你的mysql表中使用自动增量列它会自动增加或使用随机函数生成id。我会先建议你