[MONGODB] findOneAndUpdate에서 반환하는 필드를 선택 몽구스
MONGODBfindOneAndUpdate에서 반환하는 필드를 선택 몽구스
Nodejs에 몽구스를 사용하여 찾을를 사용하여 일부 필드를 반환 할 수 있습니다. 예를 들면.
User.findOne({_id:'132324'}, {first_name:1, last_name:1}).exec...
하지만 난 findOneAndUpdate를 사용하여 특정 필드를 반환하는 방법을 알아낼 수 없습니다.
User.findOneAndUpdate({_id:'132324'}, {$set : {..bla bla}}, {first_name:1, last_name:1}).exec....
사람이 전에를 달성 했습니까? 나는 문서에서 찾을 수 없습니다.
해결법
-
==============================
1.등이 적용된다 "upsert"과 "새로운"와 같은 기타 세부 사항을 있기 때문에 수동에서 옵션 인수는에서 "필드"키가 필요합니다. 귀하의 경우에 당신은 또한 "새로운"옵션을 원하는 :
등이 적용된다 "upsert"과 "새로운"와 같은 기타 세부 사항을 있기 때문에 수동에서 옵션 인수는에서 "필드"키가 필요합니다. 귀하의 경우에 당신은 또한 "새로운"옵션을 원하는 :
User.findOneAndUpdate( { "_id": "132324" }, { "$set": { "hair_color": "yellow" } }, { "fields": { "first_name":1, "last_name": 1 }, "new": true } ).exec(...)
다른 방법으로 당신은) (ALL 기타 사항 서보 -OFF 사용할 수 있습니다
User.select({ "first_name": 1, "last_name": 1 }).findOneAndUpdate( { "_id": "132324" }, { "$set": { "hair_color": "yellow" } }, { "new": true } ).exec(...)
"새로운"없는 것을주의 : 업데이트의 수정이 처리되기 전에 실제 문서가 반환하는 상태에있다. 일부 시간이 당신이 무엇을 의미하지만, 대부분의 시간은 정말 수정 된 문서를 원한다.
-
==============================
2.MongoDB를 버전 3.2 이상 들어
MongoDB를 버전 3.2 이상 들어
User.findOneAndUpdate( { "_id": "132324" }, { "$set": { "hair_color": "yellow" } }, { "projected": { "first_name":1, "last_name": 1 }, "returnNewDocument": true } )...
-
==============================
3.{새로운 : TRUE} 사용 옵션 findOneAndUpdate에서 (기본값 : false)를
{새로운 : TRUE} 사용 옵션 findOneAndUpdate에서 (기본값 : false)를
from https://stackoverflow.com/questions/44104310/mongoose-select-fields-to-return-from-findoneandupdate by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 어떻게 MongoDB의 하나 제대로 증가 많은 날짜는 무엇입니까? (0) | 2019.12.19 |
---|---|
[MONGODB] 몽구스 -에 의해 : 11000 E11000 중복 키 에러 인덱스 발생? (0) | 2019.12.19 |
[MONGODB] 몽고 결과에서 _id 제거 (0) | 2019.12.19 |
[MONGODB] 인터넷없이 몽구스 캔은하지 연결 (0) | 2019.12.19 |
[MONGODB] mongo.lock 파일의 사용은 무엇입니까? (0) | 2019.12.19 |