簡體   English   中英

MongoDb 使用 Node 通過 _id 查詢

[英]MongoDb query by _id using Node

  const cCurser = await client
    .db("Database")
    .collection("Collection")
    .findOne({
        _id: ObjectId(Filter)       
    }).then(function(item){
        Obj = item;}
    );

我試圖通過 _id 查詢 MongoDB,但它返回 Promise {}。 請幫助我檢索其中的數據。 Error detected:ReferenceError: ObjectId is not defined

在您的查詢之前添加:

import mongoose from 'mongoose';
const { ObjectId } = mongoose.Types;

或者:

用這個:

  const cCurser = await client
    .db("Database")
    .collection("Collection")
    .findOne({
        _id: new mongoose.Types.ObjectId(Filter)       
    }).then(function(item){
        Obj = item;}
    );

首先,不要將await語法與then語法混用。

要么使用await

let Obj = null;
const cCurser = await client
    .db("Database")
    .collection("Collection")
    .findOne({
        _id: ObjectId(Filter)       
    });

//Use Obj

或者then語法。 在這里,您必須在then()中編寫依賴於Obj的代碼 rest。

let Obj = null;
const cCurser = client
    .db("Database")
    .collection("Collection")
    .findOne({
        _id: ObjectId(Filter)       
    }).then(function(item){
        Obj = item;
         //Use Obj
        }
    );

同樣根據您的編輯,您似乎還沒有從 Mongo 導入ObjectId方法。

let mongo = require('mongodb');
let ObjectId = mongo .ObjectID
```

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM