1
私は、Mongooseを使用してdb内の特定のユーザーを探して、同じデータが存在するかどうかに応じてデータを保存または無視しようとしています。Mongooseが見つかりませんでした。
しかし、私が送信したいHTMLがまだあるres.send()
で" "
含まれているが、User.find()
関数コールバック後の変数html
に反映されている変更はありません。
これを解決する方法についてのご意見はありますか?
var html = "";
app.post('/', function(req, res){
var name_of_user = req.body.username;
var userObject = new User({
username: req.body.username,
email : req.body.email,
password : req.body.password
});
User.find({"username" : name_of_user}, function(err,docs) {
if(docs.length) {
console.log('Name exists already');
html = '<i>' + userObject.username + '</i> is already a registered user!';
html += '<br><br><br><a href="http://localhost:3000/">Try again</a>';
}
else {
userObject.save(function(err, user) {
if (err) return console.error(err);
});
html = 'Successfully signed up as <i>' + name_of_user +
'</i>. Added <i>' + name_of_user + '</i> to the MongoDB database.';
html += '<br><br><br><a href="http://localhost:3000/">Go back</a>';
}
//console.log(docs);
});
res.send(html);
});
私の回答があなたの問題を解決しましたか? – DAXaholic