Also muss ich meine Sammlung auf MongoDB von Feldern, die sich auf einem Array von Objekten befinden, sortieren.So verwenden Sie Aggregat mit ReactiveMongo
Ich habe
"columns": [{
"kind": "FirstKind",
"descriptor": "Description1",
"data": "Data to be sorted"
},{
"kind": "SecondKind",
"descriptor": "Description2",
"data": "Data to be sorted"
}]
Was ich erreichen will ist „FirstKind“ und „Description1“ oder „SecondKind“ und „Description2“ und sortieren die Sammlung durch die Felddaten auswählen. Ich fand eine Lösung zu tun, dass auf MongoDB, indem Sie:
db.getCollection('results').aggregate(
[{
"$match": {
"$and": [{
"columns.kind": "FirstKind"
}, {
"columns.descriptor": "Name"
}]
}
},{
"$sort": {
"columns.data": -1
}
},{
"$limit": 20
}]
)
Mein Problem ist nun, wie das auf Scala ReactiveMongo zu übersetzen. Ich habe versucht, diese Dokumentation zu verstehen: http://reactivemongo.org/releases/0.11/documentation/advanced-topics/aggregation.html, aber ich bin wirklich verwirrt darüber. Hat jemals jemand mit ReactiveMongo auf Scala aggregiert? Vielen Dank!
so, bei 'find' Sie können Benutzer' .Cursor [CaseClass]() 'und dann anwenden sammeln oder irgendetwas anderes müssen Sie mit den Objekten zu tun. Wie machst du etwas Ähnliches mit "Aggregat", weil es scheint, als hätte es keinen "Cursor" –
Sie sollten sich die [API-Referenz] (http://reactivemongo.org/releases/0.11/api/index) ansehen. html # reacticmongo.api.commands.AggregationFramework $ AggregationResult). – cchantep
Wir haben, und es macht nicht viel Sinn –