그래서 nodeJS
및 mongoDB
으로 작업하고 있습니다. 메신저는 컬렉션을 업데이트하는 데 문제가 있으며 메신저 작업이 시작된 지 일주일이 지났으며 실제로 두통을 겪습니다. 그래서이 여기에 다음 내 시료 채취
{
"_id": ObjectId('51299sdfasdf') //this is just a sample Id
"names": [
"NameA",
"NameB",
"NameC"
],
"names_id": [
ObjectId('asdfasdf1312'),
ObjectId('12sda123123a'),
ObjectId('asdf1212123a')
],
"user_alias": "SampleA"
}
것은 내가 바로 그것을 코드를 알고 내 스크립트
var mongoose = require('mongoose');
var model = mongoose.model('Sample');
model.update({ _id: req.query._id },
{
$set: {
names: namesArray, //this are set of names ex; ['name1', 'name2']
names_id: namesIdArray //this are set of ids ex: [ ObjectId('sgsdfgsd'), ObjectId('asdfasdfadf')
},
},
function(err, results) {
if(err) res.status(500).send(err);
console.log(results);
}
);
입니다. names_id 배열에서 나는 mongoose.mongo.ObjectId('id here')
과 같은 모든 객체 ID를 지정합니다. 하지만 아무것도 업데이트하지 않습니다. 여기에 결과가 있습니다.
{ ok: 1, nModified: 0, n: 1 }
무엇이 문제입니까? 버전 때문인가요? 내 mongoose
버전은 2.15.8
도와주세요! 고맙습니다!
당신이 있는지 있습니까 거라고 반대 할 거라고 변환이 읽기 ID를
객체에 _id를 변환하지'req.query._id'입니다 한정된? 또한 몽구스 버전 2.15.8도 없습니다. – robertklep
예 정의 됨. 그리고 버전에 대해서. 때 나는 내 자식 npm mongoose -v 입력하십시오. 2.15.8. 이것은 나타날 것입니다 –
몽구스 또는 MongoDB에 문제가 있다고 생각하지 않습니다. 'req.query.id'에 대한 값을 출력 할 수 있습니까? 특정 ID로 레코드가 없기 때문에 업데이트하지 않는 이유가 여기 있다고 생각합니다. – Samay