2016-10-09 2 views
1

변수를 사용하여 필드 이름을 사용해야합니다. 어떻게해야합니까? effectivly이 예에서 MongoDB : 동적 필드 이름이 포함 된 addToSet

let variableName = 'cars'; 
Collection.update(
    { _id: id }, 
    { 
     $addToSet: { 
      variableName: { 
       foo: bar 
      } 
     } 
    } 
); 

처럼 수행해야합니다 :

Collection.update(
    { _id: id }, 
    { 
     $addToSet: { 
      cars: { 
       foo: bar 
      } 
     } 
    } 
); 

하지만, 프로그램이 작업을 수행해야합니다. 이와

비슷한 일 :

var fieldName = 'user'; 
Collection.find({ _id: id, fieldName + '.language': lang }); 

이 작업을 수행하는 올바른 방법은 무엇입니까?

답변

1

그냥 동적 키 이름을 만들 수 있습니다

let variableName = 'cars'; 
Collection.update(
    { _id: id }, 
    { 
     $addToSet: { 
      [variableName]: { 
       foo: bar 
      } 
     } 
    } 
); 

로 코드를 업데이트합니다.

관련 문제