Angenommen, mein Schema sieht wie dies zu tun:Wie „Gruppe“ in mongoengine
class User(Document):
username = StringField()
password = StringField()
category = StringField()
Stellen haben wir diese bestehenden Kategorien: "avengers", "justice-leaguers", "villains"
, und ich möchte so eine "group by"
Abfrage für User.objects.all()
auszuführen, dass ich bekommen kann so etwas wie dieses:
[
[<User: IronMan object>, <User: Thor object>, <User: Hulk object>],
[<User: Superman object>,<User: Batman object>],
[<User: Ultron object>, <User: Joker object>, <User: LexLuthor object>]
]
Oder noch besser:
{
"avengers": [<User: IronMan object>, <User: Thor object>, <User: Hulk object>],
"justice-leaguers": [<User: Superman object>,<User: Batman object>],
"villains": [<User: Ultron object>, <User: Joker object>, <User: LexLuthor object>]
}
Ich habe mir die Dokumente von MongoEngine angesehen und muss noch etwas hilfreiches finden. Danke Leute!
Jede Chance, diese Mongoengine mit getan werden könnte? Ich werde das sehr wahrscheinlich in meinem Python-Code anstelle der Mongo-Shell machen. Danke noch einmal! – benjaminz
@benjaminz Ich habe keinen Zugriff auf Mongoengine (und habe es nie benutzt), aber es scheint die erforderliche API zu haben: [mongoengine.queryset.QuerySet.aggregate (* pipeline, ** kwargs)] (http: // docs.mongoengine.org/en/latest/apireference.html#mongoengine.queryset.QuerySet.aggregate) –
Überprüfen Sie diese Antwort: [link] (http://stackoverflow.com/a/24420848/1882331) zur Verwendung von ' Gruppe von 'in Mongoengine. – Yahya