2017-12-19 12 views
3

쿼리를 노드로 변환하십시오. 몽구스의 어느 버전 arrayfilter 직장이나 방법에ArrayFilter in mongoose

db.getCollection('student').update(
    { 
     "_id": ObjectId('5a377d62d21a3025a3c3aa49') 
    }, 
    { 
     $set: { 
      "examples.$[i].isDeleted": true, 
      "examples.$[i].updatedAt": new Date(), 
      "updatedAt": new Date() 
     } 
    }, 
    { 
     arrayFilters: [ 
      { 
       "i._id": { 
        $in:[ 
         ObjectId("5a377d62d21a3025a3c3aa4d"), 
         ObjectId("5a377d62d21a3025a3c3aa4c") 
        ] 
       } 
      } 
     ], 
     multi: true 
    } 
) 

https://docs.mongodb.com/manual/reference/operator/update/positional-filtered/

답변

0

액세스를 얻기 위해 MongoDB를 3.6 https://docs.mongodb.com/manual/release-notes/3.6/

(@ 호환 드라이버)에 대한 참고 자료에 따르면 노드 응용 프로그램에서 다음을 실행할 수 있습니다 mongodb 3.6 기능에 노드 드라이버 3.x를 사용해야합니다.

드라이버가 RC 상태 (당분간은 대답) 인 것 같습니다.. https://github.com/mongodb/node-mongodb-native/releases

아마도 몽구스는 아직 사용을 기다리고 있습니다. https://github.com/Automattic/mongoose/blob/master/package.json

따라서 이러한 것들이 준비 될 때까지 기다려야합니다. 물론 공식적인 수정이 완료 될 때까지 자기 자신이 물건을 연결하려고 할 수 있습니다.

+0

답변을 업데이트하십시오. –