Ich erstelle eine API, wo 3 Eingabeparameter angegeben werden können, wie zum Beispiel: /trips/:id/:from/:to
. Die Parameter, die mich interessieren, sind from
und to
. In meiner mongoDB Sammlung, ich habe eine Struktur wie folgt aus:Hinzufügen von Feldern zur Mungo-Aggregation dynamisch basierend auf req params
id 2014_08 2014_09 ...
1 [...] [...]
2 [...] [...]
Nun, was ich in der folgenden Aggregation erreichen wollen, ist, dass auf das, was aus dem Aufruf in from
angefordert und to
, sollte es kehrt die entsprechende Felder.
Zum Beispiel: GET /trips/1/2014_08/2014_09
sollte zurückgeben:
id: 1,
2014_08: {
...
},
2014_09: {
...
}
wie Meine Route aussieht:
app.get('/trips/:id/:from/:to', function(req,res) {
var aggr = Trip.aggregate([
{ "$match": {
"_id": Number(req.params.id)
}
},{
"$project": {
"_id" : 1,
"trips_201408": "$2014_08",
//How to append more to this, according to from/to?
}
}
])
aggr.options = { allowDiskUse: true };
aggr.exec(function(err, trips){
if(err)
res.send(err);
res.json(trips);
});
});
ist also meine Frage, was für eine gute Praxis der Projektphasen dynamisch entsprechend den Eingang für die Erstellung von von und zu?
Ordentlich, danke! Auf diese Weise wird die Abfrage viel einfacher. Brauche jetzt eine Schleife, wenn mehr als 2 aufeinanderfolgende Monate angegeben sind. – ffritz
@ffritz Sicher. Das ist einfach genug. Hinzugefügt. –
Oh schön, habe das nicht erwartet, sondern an meiner eigenen Lösung gearbeitet. Das sieht gut aus! Danke vielmals. – ffritz