0
시도했지만 "_id": "$field"
시도했지만 작동하지 않습니다.mongoDB/mongoose :`.find` 결과를 투사 할 때 _id를 수정할 수 있습니까?
"_id": 0
완전히
시도했지만 "_id": "$field"
시도했지만 작동하지 않습니다.mongoDB/mongoose :`.find` 결과를 투사 할 때 _id를 수정할 수 있습니까?
"_id": 0
완전히
이 model.find처럼 몽구스
var UserSchema = new mongoose.Schema({
//other fields
},{
minimize: false,
toJSON: {
transform: function (doc, ret) {
ret.newField= ret._id;
delete ret._id;
}
}
});
및 쿼리를 사용하여()
가 집계
답장을 보내model.aggregate([
{
$match:{}
},
{
$project:{
"newField":"$_id",
"_id":0
}
}
])
감사를 사용하여 _id 필드를 제거! 나는 .find 쿼리에 추가 할 것을 찾고 있었지만,이 솔루션은 꽤 흥미 롭습니다. 올바르게 이해한다면, 당신의 솔루션은'toJSON' 메서드가 호출되었을 때에 만 적용될 것입니다. 따라서'.find '쿼리 결과를 얻은 후에 결과를 가져 와서'toSSON'을 적용해야합니다. – Jane
아니요, 아니요. modelname.find ({// 여기에 검색어}, {// 여기에 투영}, {other // options}) 몽구스가 자동으로 수행합니다. – Shubham