db.History.find({'_file.project': 'someproject')
.populate('_file', 'name reference project')
.sort(sortField || '-created')
.limit(max || 64)
.exec(this);
Qui sto cercando di trovare tutti i documenti che corrispondono su un campo compilato dal riferimento di file. Non sembra funzionare. È possibile qualcosa del genere?Mangusta query un campo popolato
Potrei duplicare il campo del progetto su questo oggetto, come soluzione temporanea solo per l'interrogazione ma preferirei non ovviamente.
Grazie. Quindi, solo per essere sicuro, per poter interrogare la raccolta Cronologia basata sul progetto dovrò aggiungere il campo del progetto, duplicandolo dal modello File? Recuperare tutti i documenti e quindi filtrare in seguito non è un'opzione, poiché la raccolta Cronologia è probabilmente molto grande. –
@ 0x80 Destra, o ottieni tutti i documenti 'File' con il' progetto' corrispondente e poi usa una query '$ in' su' History' usando i valori '_id' della prima query. – JohnnyHK
Lo capisco adesso. È bello sapere che ci sono due opzioni. Grazie! –