sql >> Database >  >> NoSQL >> MongoDB

Problemen bij het publiceren/abonneren op een Mongo-geaggregeerde query

Meteor ondersteunt nog geen aggregatie. Je kunt het echter op deze manier laten werken:

Voeg een aggregatiepakket toe:meteor add meteorhacks:aggregate

Gebruik Meteor.call /Meteor.methods in plaats daarvan, omdat een aggregatieresultaat op dit punt statisch is. Geen reactiviteit ondersteund.

serverkant

Meteor.methods({
    "getTestList" : function() {
        return Tests.aggregate(
        [{
            $project : {
            "name" : 1,
            "description" : 1,
            "testNumber" : 1
          }
        }, {
          $sort : {
            "testNumber" : 1
          }
        }
      ])
    }
});

Klantzijde:

Uw sjabloon

Template.xx.onCreated(function() {

    Meteor.call("getTestList", function(err, result) {
        Session.set("testlist", result);
    });
});

Vervolgens kunt u 'reactief' toegang krijgen tot de gegevens (wanneer deze gereed zijn) door Session.get("testlist"); te bekijken.




  1. Mongodb in linux-server

  2. versnel de verwerking van grote resultatensets met rmongodb

  3. Groeperen op datumintervallen

  4. Hoe de Shard-sleutel te veranderen