我正在尝试访问我的用户模型中的数据(使用Express,Pug和Mongoose)。
这是我的架构:
var userSchema = mongoose.Schema({
userData: {
name: { type: String, required: true, unique: true },
password: String
},
notes: [ String ],
contacts: [{
name: String,
notes: [ String ]
}],
locations: [ String ]
});
这是我的pug模板文件:
each user in allUsers
p #{user.userData.name}
My Route看起来像这样:
app.get('/', function(req, res) {
if (app.locals.userData.name) {
res.render('app', {
currentUser: app.locals.userData,
allUsers: User.find({})
});
} else {
res.redirect('signup');
}
});
哪里可能是我的错?
浏览器显示Cannot read property 'name' of undefined
错误。
答案 0 :(得分:1)
我不得不使用回调函数!!!
app.get('/', function(req, res) {
User.find({}, function(err, users) {
if (app.locals.userData.name) {
res.render('app', {
currentUser: app.locals.userData,
allUsers: users
});
} else {
res.redirect('signup');
}
});
});