【发布时间】:2020-01-24 12:22:06
【问题描述】:
我是 node js 和 Mongo Db 的新手。 我正在尝试编辑用户详细信息。因此,我为每个用户显示了带有编辑链接的用户列表。当我单击编辑链接时,我将用户名传递给了路由器,并且成功地到达了那里。但未能根据传递的名称找到用户的详细信息。 下面是我的代码
router.get('/edit/:name', function(req, res){
var username= req.params['name'];
console.log(username);
db.collection('users').find({ name:username }).toArray(function (err, result) {
console.log(result);
if (err)
throw err;
res.render("edit-form", {details: result})
});
});
在这里,当我执行 console.log(username);我得到了用户名,但是 console.log(result);是空的。如果我尝试直接在 find 方法中提供用户名,就像下面一样,我会在我的页面中得到结果。
db.collection('users').find({ name:"test"}).toArray(function (err, result) {
console.log(result);
if (err)
throw err;
res.render("edit-form", {details: result})
});
如何动态获取用户名,以便从数据库中获取对应的用户结果。
【问题讨论】:
-
console.log(用户名);你在日志中得到你的用户名了吗??
-
是的,我得到了
-
你得到了什么 var username= req.params['name'];如果你调用edit/abc。
-
var username= req.params['name'];里面有“测试”。我正在尝试编辑测试的详细信息,这是我的用户名。