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

Meteor - collection.find() returnerer altid alle felter

din syntaks er en smule deaktiveret, burde det være

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

eller

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

din skabelon styrer faktisk, hvilke data der vises, men der er stadig mange scenarier, hvor feltbegrænsning giver mening - databeskyttelse eller effektivitet (nogle felter i alle poster, alle felter i den 'aktuelle' post) er to almindelige

du nævnte det ikke, men det er normalt inden for en publiceringsfunktion - se http://docs.meteor.com/#meteor_publish - fields modifikator er også tilgængelig på klienten, men der begrænser den ikke data, der sendes ned til klienten, kun til skabelonen - serversidefeltreduktion/udvælgelse har forskellige fordele

--

dobbelttjek, at du har fjernet autopublish pakke også, men du bør se en advarsel, hvis du har den aktive og skriver dine egne publiceringsfunktioner, hvilket er der, hvor du oftest vil bruge fields



  1. Sådan kører du js-fil i mongo ved hjælp af springdata

  2. hvordan man bruger aggregatfunktion i meteor

  3. Redis klient

  4. Redis vs MongoDB