它必須是一個很簡單的問題,但我不能找到一個方法來做到這一點...Node.js:如何知道某個值是否在MongoDB數據庫的集合中?
我的證件,我可以以JSON格式像這樣代表一個非常基本的MongoDB集合:
myDatabase.myCollection = {
{hashkey: "hashkey1",
data: "someData"
},
{hashkey: "hashkey2",
data: "someData"
},
{hashkey: "hashkey3",
data: "someData"
}
}
每個hashkey值是唯一的。
現在,我想寫下面的代碼中的Node.js:
// I use npm mongodb, sounds good ?
var mongodb = require('mongodb');
// initiating connection to myDatabase...
var db = "my_database_I_just_connected_to";
var myCollection = db.collection('myCollection');
var newHashkey = "hashkeyX";
if ("newHashkey_is_already_in_myCollection") {
doSomething();
} else {
doSomethingElse();
}
我正在尋找一種方式來獲得布爾「newHashkey_is_already_in_myCollection」。使用我的例子數據庫:
- 如果 「hashkeyX」 === 「hashkey1」 ------>真正
- 如果 「hashkeyX」 === 「hashkey5」 ------>假
我一定是失明的,但是我找不到一個直接的功能。我已經嘗試了很多使用選擇器的方法,計算返回的文檔,試圖理解遊標與對象......不會這樣做。我最初的想法是:
if (myCollection.findOne({hashkey: "hashkeyX"}) === null) {
doSomething();
} else {
doSomethingElse();
}
1)什麼是得到這樣一個布爾值的好/最好的方法?
2)[可選:]你能聯繫我了有關此類問題的一些很好的解釋?
這將是合乎邏輯的。作爲Node新手,我經常犯回調錯誤......那麼其他答案呢?將無法工作? –
檢查它可以幫助的官方node.js mongodb文檔:https://docs.mongodb.com/getting-started/node/client/ – alexmac
異步是強大的,美麗的,需要我改變我的想法......它完美地工作,並感謝鏈接,我只有npm mongodb自述...非常感謝! –