Mongodb
在 mongodb for node.js 中使用 findOne() 返回除某些欄位之外的所有欄位
我正在嘗試使用以下腳本來查詢文件,但返回的文件仍然包含我不想要的欄位(密碼)。
const client = await MongoClient.connect( MONGODB_CONNECTION_STRING, { useUnifiedTopology: true } ); const db = client.db(DB_NAME); const collection = db.collection(collectionName); const data = await collection .find( { _id: someId }, { password: 0 } );
它應該像我在 mongodb 文件中閱讀的那樣工作,但我沒有在 mongodb for node.js 中找到關於 findOne 的任何文件。
我的問題的解決方案在另一個stackoverflow對另一個問題的回答中提到。如果我將投影修改為“欄位”的值,如下所示,那麼 findOne() 將按我的預期工作。
const data = await collection .findOne( { _id: someId }, { fields: {password: 0} } );
我認為你需要使用
project()
. 請參閱此處的範例 -投影