这是我的用户架构:
_id: mongoose.Schema.Types.ObjectId,
name: String,
username: String,
password: String,
googleId: String,
files: [{
type: mongoose.Schema.Types.ObjectId,
ref: "File"
}]
});
这是我的文件架构:
leader: {
type: mongoose.Schema.Types.ObjectId,
ref: "User"
},
p_name: String,
trade: String,
description: String
});
这是文件的POST请求:
const file1 = new File({
p_name: req.body.p_name,
trade: req.body.trade,
description: req.body.description,
leader: User._id // assign the _id from the person
});
User.findById(req.user.id, function(err, foundUser) {
if (err) {
console.log(err);
} else {
if (foundUser) {
console.log(foundUser.name);
foundUser.files = file1;
file1.save(function(err) {
if (err) {
console.log(err);
}
res.redirect("/afterlogin");
});
}
}
});
});
这是GET请求:
User.findById(req.user.id, function(err, foundUser) {
if (err) {
console.log(err);
} else {
if (foundUser) {
console.log(foundUser.name);
res.render("afterlogin", {
ename: foundUser
});
}
}
}).populate("files").exec(function(err, c) {
if (err) {
console.log(err);
}
console.log(c.files);
});;
});
问题是当我尝试获取文件时,它只是给我一个空数组。
console.log(c.files);
输出
[]
在控制台窗口中。