如何将浏览器中的url作为parameter passing给节点js中的后端?
我正在使用MEAN堆栈。 我正在发送用户ID作为一个url。
<div> <% users.forEach( function( user ){ %> <li><a href=""><%= user.username %></a></li> <li><a href="updateEmployee/<%= user._id %>"><%= user.id %></a></li> <% }); %> </div>
我想获取这个用户ID作为参数在路由中,并查询具有该ID的用户的详细信息。
我试图如下
router.get('/updateEmployee/:ID', function (req, res) { User.findOne({_id: req.ID}, function ( err, users, count ){ res.render( 'viewUser', { users : users }); });
});
我如何显示在ejs
<li><a href="/AdminDatabase/viewUser"><%= users.username %></a></li> <li><a href="/AdminDatabase/viewUser"><%= users.id %></a></li>
我提到了https://scotch.io/tutorials/use-expressjs-to-get-url-and-post-parameters来编写这段代码。
但是我得到一个错误,说不能读取属性“用户名”为空
我是否以正确的方式做这件事。 如果是的我的错误是什么? 或者我怎么能用其他方法做到这一点?
而不是使用_id:req.ID你应该在你的Mongoose findOne函数中使用_id:req.params.ID