Node show user info by id
Node show user info by id
I have a simple profile that can everybody see without any auth. I want to display the firstname and lastname but I'm unable to do it.
firstname
lastname
Here is my code.
// Profile
router.get("/profile/:id", function (req, res)
User.findById(req.params.id, function (err, doc)
if (err)
console.log(err);
return;
else
res.render('users/profile',
title: 'Profile',
User
);
console.log(User.firstname);
);
);
I get only undefined in the console.
undefined
1 Answer
1
You are getting the data from the wrong place, you need to use the callback data and don't the model object:
router.get("/profile/:id", function (req, res)
User.findById(req.params.id, function(err, doc)
if(err)
return;
else
res.render('users/profile', title: 'Profile', doc);
console.log(doc, doc.firstname);
);
);
Changing title: 'Profile', User to title: 'Profile', doc.
title: 'Profile', User
title: 'Profile', doc
Thanks for contributing an answer to Stack Overflow!
But avoid …
To learn more, see our tips on writing great answers.
Required, but never shown
Required, but never shown
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.