![](/img/trans.png)
[英]python mongoengine EmbeddedDocumentListField and aggregate
[英]how to aggregate group in mongoengine python
我正在嘗試聚合MongoDB
group
。
我們使用的是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
我究竟做錯了什么? 我是mongo
python
新手。 謝謝你的幫助:)
最好的問候,約翰尼
我已經解決了這個問題,我做錯了。
models.Test.objects.filter(agreement__in = agreements).aggregate(
{"$group": { "_id": "$created" }}
)
不管怎么說,還是要謝謝你 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.