2014-09-29 1 views
0

Mongoskin에서이 쿼리가 작동하지 않는 이유는 무엇입니까?mongoskin을 사용하는 ObjectID

{"_id": itemID} 

내가 진정으로이 _id 일치하는 것은 내가 MongoDB를 통해이 같은 쿼리를 실행하는 경우 때문에 작동 쉘이있는 요소가 있다는 것을 알고있다 (항목 ID는 몽고 ObjectID입니다). 몽고 스킨이 왜 효과가 없습니까?

답변

0

몽고 스킨은 바닐라 mongoDB보다 다른 종류의 ObjectID을 사용합니다. 내 문자열을 ObjectID으로 변환하기 위해 다른 라이브러리를 사용하고 있었기 때문에 혼동이있었습니다. 여기에 일이 내게 무엇 적절한 ObjectID 개체를 얻을 수 있도록 :

require('mongoskin').ObjectID.createFromHexString(hexString); 
2
var ObjectId = require('mongodb').ObjectID; 
주의 사항 : 공장 함수의 이름 대신 ObjectId가의, OBJECTID 이다는
은 그럼 당신은 사용할 수 있습니다
db.collection('XXX').update({_id: ObjectId(XXX)}, {$set: {XXX : XXX}}); 
음, db은 몽고 스킨의 포장 기능입니다.
module.exports = (function() { 

    return require('mongoskin').db('mongodb://localhost:27017/db_name'); 

})(); 
+0

이제 몽구스를 대신 사용하는 것이 좋습니다. –