MongoDB の設定コレクションから特定の値を取得しようとする関数があります。設定コレクション内の設定値を含む設定オブジェクトのマーカーは {'settings':'settings'} です。スキーマは次のとおりです。
collection:setting
|--object
|--{'settings':'settings'}
|--{'valueA':'valueA'}
|--...
問題は、設定オブジェクトを初めてクエリしたときに、コレクション「設定」が単に存在しないことです。そう、
exports.getInstruments = function (callback) {
db.collection("settings", function(error, settings) {
settings.find({ "settings" : "settings" }), (function(err, doc) {
callback(doc.instruments);
});
]);
}
ハングするだけで、コールバックは呼び出されません。コレクションが存在しない場合は、"" または undefined を返す必要があります。それ以外の場合は、doc.instrumens.