5
とListFieldをを照会:トラブル私はmongoengineを使用している、と私は、次のような状況を持っている、</p> <p>マイモデルmongoengine
class Item(Document):
...
tags = ListField(StringField(max_length=30))
クエリ:
filters = {
'tags__contains': query
}
tags_with_counter = Item.objects.filter(**filters).item_frequencies('tags')
これは、Aを返しますタグの名前を含むタプルのリスト、および頻度。私がしたいのは、クエリとそれぞれの頻度を含むタグだけです。どうやってやるの?
class Post(Document):
title = StringField()
tags = ListField(StringField())
post1 = Post(title='Fun with MongoEngine', tags=['mongodb', 'mongoengine']).save()
post2 = Post(title='Loving Mongo', tags=['mongodb']).save()
あなたは、この保存されます::あなたはfind()
文書が検索キーワードに一致しなければとき、それらが返されるのMongoDBでは、
{
"tags": [ "mongodb", "mongoengine" ],
"title": "Fun with MongoEngine"
}
{
"tags": [ "mongodb" ],
"title": "Loving Mongo"
}
この同様のMongoEngineモデルとドキュメントを持つ
このクエリの最終目標/使用例をより詳しく説明できますか?選択できる有限のタグがありますか?クエリを含むタグを含むドキュメントの数を欲しいだけですか?上記のitem_frequenciesクエリがあなたのニーズに十分でないのはなぜですか? –