我一直在尝试从我创建的用于存储用户的Mongoose数据库中获取密码属性。我可以很好地获取用户名,但是当我尝试使用它来获取密码时:
HSSFRow row = (HSSFRow) rit.next();
它在控制台中记录:
User.find({ 'credentials.username': gusername }, function(err, user) {
if (err) throw err;
console.log(user);
console.log(user.credentials.password);
});
正如您所看到的,它已成功记录用户'您可以在那里看到密码和用户名,但是,我无法通过Connected to the DB using Mongo!
GET /login 200 66.097 ms - 1931
GET /stylesheets/style.css 304 2.212 ms - -
drew
[ { credentials: { password: 'tueresputa99', username: 'drew' },
__v: 0,
_id: 569e5e99e7810411003c4c25 } ]
/home/ubuntu/workspace/routes/index.js:127
console.log(user.credentials.password);
^
TypeError: Cannot read property 'password' of undefined
at Query.<anonymous> (/home/ubuntu/workspace/routes/index.js:127:33)
at /home/ubuntu/workspace/node_modules/mongoose/node_modules/kareem/index.js:177 :19
at /home/ubuntu/workspace/node_modules/mongoose/node_modules/kareem/index.js:109:16
at doNTCallback0 (node.js:417:9)
at process._tickCallback (node.js:346:13)
[nodemon] app crashed - waiting for file changes before starting...
获取密码
任何帮助表示赞赏!这非常令人沮丧:/
答案 0 :(得分:2)
user
函数内的callback
是一个数组而不是一个对象。注意用户对象之前的JSON数组方括号
-> [ <- { credentials:
如果您的目的是找到一个用户,则应使用User.findOne
功能。