2017-11-30 1 views
0

Node.js 및 MongoDB를 사용하여 _id로 찾기()를 시도하고 있습니다.mongodb에서 _id로 찾을 수 없습니다.

대체 매개 변수를 사용하거나 매개 변수를 전혀 사용하지 않으면 데이터베이스에 개체를 표시 할 수 있습니다.

[{ "_id": "5a1ff1ac32fe0a2bd966be1e", "제목": "안녕하세요", "가격 내가 얻을 결과는 다시이 있습니다

mongo.connect(url, function(err, db){ 
    if (err) throw err; 
    db.collection('listings').find().toArray(function(err, result){ 
     if (err) throw err; 
     console.log(result); 
     db.close(); 
    }); 
}); 

: 여기 것을 보여주기 위해 내 코드와 결과입니다 ":"5 "}, {"_ ID ":"5a207cea2f119cbd6a5fa688 ","제목 ":"안녕하세요 ","가격 ":"10 "}]

나는를 사용하여 결과를 찾을 수있는 코드를 수정하는 경우 제목 "hi"나는 이걸 돌려 받았다 :

,

[{ "_id": "5a1ff1ac32fe0a2bd966be1e", "타이틀": "하이", "가격" "5"}]

다음 코드를 사용하여 그러나를

mongo.connect(url, function(err, db){ 
    if (err) throw err; 
    db.collection('listings').find({'title': 'hi'}).toArray(function(err, result){ 
     if (err) throw err; 
     console.log(result); 
     db.close(); 
    }); 
}); 

을 이 코드를 사용하여 _ID 정렬 기준으로 할 때 :

mongo.connect(url, function(err, db){ 
    if (err) throw err; 
    db.collection('listings').find({'_id': '5a1ff1ac32fe0a2bd966be1e'}).toArray(function(err, result){ 
     if (err) throw err; 
     res.send(result); 
     db.close(); 
    }); 
}); 

결과를 I는

돌아가

[]

질문 : 내가 _id를 사용할 때 나는 특정 _id에 대한 결과를 다시 얻을 수 있도록 어떻게 _id에서 찾을 수 있습니까?

답변

0

'5a1ff1ac32fe0a2bd966be1e'은 문자열입니다.

_idObjectId입니다.

ObjectID('5a1ff1ac32fe0a2bd966be1e')으로 개체 ID를 만들 수 있습니다. 다음과 같은 기능을 요구할 수 있습니다.

const ObjectID = require('mongodb').ObjectID; 

Here은 설명서입니다.

관련 문제