0

MongoDBのfind呼び出し内のパラメーターに問題があります。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
    });
  });
});

固定ID2で呼び出します。これにより、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
    });
  });
});
4

1 に答える 1

0

解決しました。parseIntを使用してparamsを整数にキャストする必要がありました。

note_id: parseInt(request.params.note_id)
于 2013-01-13T22:23:16.797 に答える