2
Я пытаюсь объединить group
в MongoDB
.как заполнить группу в mongoengine python
Мы используем Python
, django
, Rest framework
и Mongoengine
.
Это как моя модель выглядит следующим образом:
class TestSnapshot(EmbeddedDocument):
identifier = StringField()
name = StringField()
created = DateTimeField(
default = datetime.datetime.now)
class Test(Document):
agreement = ReferenceField(Agreement)
history = ListField(EmbeddedDocumentField(TestSnapshot))
created = DateTimeField(
default = datetime.datetime.now)
На мой взгляд:
test = models.Test.objects.filter(agreement__in = agreements).aggregate([{
"$unwind": "$created"
}, {
"$group": {
"_id": "$created"
}
}])
print test
Но я трекбек так:
OperationFailure: command SON([('aggregate', u 'test'), ('pipeline', [{
'$match': {
'agreement': {
'$in': [ObjectId('558b150a89f4ad3f33ebb8ae')]
}
}
},
[{
'$unwind': '$created'
}, {
'$group': {
'_id': '$created'
}
}]
]), ('cursor', {})]) on namespace noq.$cmd failed: exception: pipeline element 1 is not an object
Что я делаю неправильно ? Я новичок в python
с mongo
. Спасибо за помощь :)
С наилучшими пожеланиями, Джонни
Вы пытались список внутри агрегата. Это была ошибка. Вы можете дать широкий ответ, если сможете. Это поможет другим. – Jay