Mongoose: показывать только заполненные результаты

Я пытаюсь вернуть результат, отфильтрованный методом заполнения

Схема для коллекции

{
  myObjects: [{
    obj: { type: Schema.ObjectId, ref: myObject }
  }]
}

Схема для моего объекта

{
  name: { type: String },
  active: { type: Boolean }
}

So

.find().populate('myObjects.obj')

Это возвращает такие результаты, как так

[
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }, 
      { obj: { name: 'Stacy', active: false } },
      { obj: { name: 'James', active: false } }
    ]
  },
  { myObjects: 
    [
      { obj: { name: 'James', active: false } }
    ]
  },
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }
    ]
  },
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }, 
      { obj: { name: 'James', active: false } }
    ]
  }
]

В этот момент я хочу сказать: «Показывать только те, где активны: правда»

so I do...

.find().populate({ path: 'myObjects.obj', match: { active: true })

За исключением того, что это возвращает следующее

[
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }
    ]
  },
  { myObjects: 
    [

    ]
  },
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }
    ]
  },
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } } }
    ]
  }
]

Есть один myObjects, содержащий пустой массив. Как мне исключить это из результата, поэтому я получаю только обратно

[
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }
    ]
  },
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } }
    ]
  },
  { myObjects: 
    [
      { obj: { name: 'Adam', active: true } } }
    ]
  }
]

person BpH    schedule 21.04.2017    source источник
comment
я должен сделать что-то вроде result = result.filter(function(val) { return val.myObjects.length; })   -  person BpH    schedule 21.04.2017
comment