2
我正在學習一本書的Node.js。我沒有像現在那樣應對和使用圖書樣本代碼,而是在自己的代碼中使用基礎和重用,作爲學習練習。問題與貓鼬model.save回調
我有這個代碼爲一個新的用戶創建,我會複製我認爲是相關的。 我希望發生的是,user.register使用model.register,並獲得真或假,如果用戶創建或根據不和發送響應accordly
app.js捕捉後
app.post('/user', users.actions.register);
user.js的寄存器
var register = function (req, res) {
if (req.body.username === '' ||
req.body.email === '' ||
req.body.password === '') {
//Some field is blank - insufficient information
console.log('User creation failure: Insufficient data');
res.json(400);
} else {
var newUser = new models.account.user ({
username: req.body.username,
email: req.body.email,
password: req.body.password
});
models.account.register (newUser, function (succ) {
console.log (succ);
if (succ === true) {
res.json(200);
} else {
res.json(400);
}
});
}
};
然後account.register
var register = function (newUser) {
console.log ('Save command sent.');
newUser.save (function (err) {
if (err) {
console.log(err);
return false;
}
console.log('User Created');
return true;
});
};
用戶獲取對數據庫的創建,並在控制檯上輸出
Save command sent.
User Created
我期待發生的是,SUCC接收真的還是假的,但我做錯了什麼,並不能找出原因。
我讓這段代碼改變了方法,但是因爲這是一個對我的學習實驗,所以我希望能夠這樣做。
如果有人能指出我正確的方向或告訴我我做錯了什麼,我將不勝感激。 謝謝。
非常感謝。它正在像我期待的那樣工作。所以我從中得到的是,我使用的是未聲明的回調函數,而且我沒有以正確的方式返回。也許我會需要更多的閱讀,雖然我可以看到我不完全理解它的錯誤。再次感謝您的快速回答。 – Gabriel