にリクエストを送信する/customers/41224d776a326fb40f000001と、ドキュメントが_id 41224d776a326fb40f000001存在しない場合は、docがnull返されます404。
Controller.prototype.show = function(id, res) {
this.model.findById(id, function(err, doc) {
if (err) {
throw err;
}
if (!doc) {
res.send(404);
}
return res.send(doc);
});
};
ただし、_idMongooseが「フォーマット」として想定しているものと一致しない場合(おそらく)GET /customers/foo、奇妙なエラーが返されます。
CastError:パス "_id"の値 "foo"のObjectIdへのキャストに失敗しました。
それで、このエラーは何ですか?
_idMongooseスキーマで使用するタイプを1つだけ選択できます。では"bla"場合、あなたはのタイプ使用するStringデフォルトの代わりにObjectId、あなたは何を文字列にキャストできるよう、このチェックを追加する必要はありません。