복붙노트

[MONGODB] 프로젝션 찾기 쿼리 작동하지

MONGODB

프로젝션 찾기 쿼리 작동하지

안녕하세요 쿼리에 의해 일부 필드를 제외하고 싶습니다 ,. 임 nodejs를 사용하여

public async getDoc() {
        return new Promise((resolve, reject) => {
            this.database.collection('users').find({email: "value3"}, {password: 0}).toArray((err, result) => {
                if(err) {
                    reject(err)
                }
                resolve(result);
            });
        })
    }

하지만 결과에 나는 암호 필드를 점점 계속 설정 ..

해결법

  1. ==============================

    1.프로젝션 대신 당신이 여기에 ()의 .project 사용하는 커서 방법이있을 것이다 ... 새로운 nodejs MongoDB를 드라이버로 작업을하지 않습니다

    프로젝션 대신 당신이 여기에 ()의 .project 사용하는 커서 방법이있을 것이다 ... 새로운 nodejs MongoDB를 드라이버로 작업을하지 않습니다

    this.database.collection('users')
      .find({ "email": "value3" })
      .project({ "password": 0 })
      .toArray();
    
  2. ==============================

    2.사용 필드는 암호를 exluding 얻으려면 해당 개체의 모든 필드를 찾기 방법 2 매개 변수로 객체.

    사용 필드는 암호를 exluding 얻으려면 해당 개체의 모든 필드를 찾기 방법 2 매개 변수로 객체.

    이런 식으로 작업을 수행 :

    find({email: "value3"}, {fields: {all_other_fields...: 1}})
    

    또한 시도 할 수 있습니다 {필드 : {암호 : 0}}뿐만 아니라하지만 나 자신은 확실 작동거야 아니에요 이유가 그것을 시도하지 않았습니다.

  3. from https://stackoverflow.com/questions/51732527/projection-not-working-with-find-query by cc-by-sa and MIT license