我在MongoDB查找调用中遇到了params问题。如果我传递request.params.note_id我得到了未定义。如果我使用数字值调用find,我会得到一组正确的数据。
使用request.params.note_id调用。这只返回一个空白视图。 Console.log正确打印id。
app.get("/show/:note_id", function(request, response) {
console.log(request.params.note_id);
return db.notes.find({
note_id: request.params.note_id
}, function(err, notes) {
return response.render(__dirname + "/views/index.ejs", {
notes: notes
});
});
});
使用固定ID为2调用。这将返回一个正确呈现的视图,其中包含note_id的内容2. Console.log正确记录URL中的任何内容(例如“/ show / 22”打印22)。
app.get("/show/:note_id", function(request, response) {
console.log(request.params.note_id);
return db.notes.find({
note_id: 2
}, function(err, notes) {
return response.render(__dirname + "/views/index.ejs", {
notes: notes
});
});
});
答案 0 :(得分:0)
解决。我只需要使用parseInt将参数转换为整数。
note_id: parseInt(request.params.note_id)