我想從我的signin.ejs文件登錄,點擊在 我的登錄頁面的登錄按鈕後,它顯示「無法讀取屬性集合未定義」什麼是 問題。連接到node.js中的mongodb時,無法讀取未定義的屬性「集合」?
我這樣定義我的路線app.js:
app.post('/login', routes.dologin);
我定義的index.js我dologin路線:
exports.dologin = function (req, res) {
res.locals.session = req.session;
var user = req.body.user;
db.authenticateUser(user.email, user.password, function (err, response) {
if (err) {
.......
.......
} else {
.......
........
}
});
};
在我db.js:
var mongo = require('mongoskin'),
crypto = require('crypto');
module.exports = function (config) {
var USERS_COLLECTION = 'users',
ORDERS_COLLECTION = 'orders',
salt = 'supersecretkey',
db;
authenticateUser: function (emailId, password, callback) {
db.collection(USERS_COLLECTION).count({email : emailId, password: encryptPassword(password)}, function (err, count) {
if (err) {
console.log("error authenticating user: " + err);
callback(new Error(err));
} else if (count === 0) {
callback(new Error("emailid/password did not match"));
} else {
callback(null);
}
});
},
}
獲取「Collection undefined」的問題在哪裏?我想在這裏 一切都是正確的...這裏有什麼問題嗎?告訴我..請謝謝。
'db'是不確定的,'VAR db'不是有效的數據庫對象 –