Я новичок в NodeJS, и я использую следующее: Express Паспорт Mongoose
HI У меня есть две коллекции в MongoDB, они обе не имеют никакого отношения друг к другу, они Вызваны:
Post
и
User
В маршруте получения для /home
в выражении IF Я пытаюсь запросить информацию из обеих коллекций и представить ее в E JS стр. Мои первые мысли были создать find для одного хранилища моделей в var, а затем использовать его в другой функции при рендеринге страницы.
Вот соответствующий код:
app.get("/home", function(req, res){
console.log(req.user._id);
if (req.isAuthenticated()){
// //*Find current logged in user details
User.find({_id: req.user._id}, function(err, users){
var currentUserName = req.user.name
});
//*end
Post.find({}, function(err, posts){
res.render("home", {
startingContent: homeStartingContent,
posts: posts,
currentUser: currentUserName
});
});
} else {
res.redirect("login")
}
});
В начале моего js файла я объявил
var currentUserName
Но его значение не отображается в the home.e js для:
<p><%= currentUser %></p>
Это просто пусто.
Что я здесь не так делаю? Я думал, использование var сделает его глобальной переменной, а затем может быть использован в другой функции? Другие посты предлагают совокупность, но эти коллекции полностью разделены и не имеют ничего общего друг с другом.