【发布时间】:2019-05-04 08:37:26
【问题描述】:
我正在尝试使用 MEAN 堆栈的 CRUD 应用程序。我在 Express 中使用猫鼬来调用 MongoDB。我正在使用带有指定参数的 FindOne 函数,它总是返回相同的(不正确的)文档。
我知道我已连接到正确的数据库,因为我从该集合中获取了一个文档,但它始终是同一个文档,无论我作为参数传递什么。
module.exports = mongoose.model('Player', playersSchema, 'players'); //in player.js
const Player = require('./model/players');
app.get('/api/player/:id', (req, res) =>{
Player.findOne({id: req.params.playerId},
function(err, player) {
if(err) {
res.json(err);
}
else {
res.json(player);
}
});
});
我有 3 个独立的“玩家”,具有三个不同的“玩家 ID”字段(38187361、35167321、95821442)。我可以使用 Postman 获取以下 URL,例如:
http://localhost:3000/api/player/anythingyouWantInHere
它会返回 38187361,第一个文档。我浏览过这个网站、许多教程和 Mongoose 文档,但我看不出我做错了什么......
我希望最终通过 playerId 或用户名或电子邮件找到,但一次一个障碍......
【问题讨论】:
标签: node.js mongodb express mongoose