MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Meteor - collection.find() restituisce sempre tutti i campi

la tua sintassi è un po' storta, dovrebbe esserlo

CollectionName.find({}, {fields: {'onlyThisField':1}});

o

CollectionName.find({}, {fields: {'everythingButThisField':0}});

il tuo modello controlla effettivamente quali dati vengono visualizzati, ma ci sono ancora molti scenari in cui la limitazione dei campi ha senso:privacy dei dati o efficienza (alcuni campi di tutti i record, tutti i campi del record "corrente") sono due comuni

non l'hai menzionato, ma di solito è all'interno di una funzione di pubblicazione - vedi http://docs.meteor.com/#meteor_publish - i fields il modificatore è disponibile anche sul client, ma lì non limita i dati inviati al client, solo al modello:la riduzione/selezione del campo lato server ha vantaggi diversi

--

ricontrolla di aver rimosso la autopublish pacchetto, tuttavia dovresti vedere un avviso se lo hai attivo e scrivi le tue funzioni di pubblicazione, che è dove useresti più comunemente fields