class Tag(db.Document):
text = db.StringField(unique=True)
class Post(db.Document):
user = db.ReferenceField(User, required=True)
pid = db.SequenceField(required=True, unique=True)
description = db.StringField()
title = db.StringField(required=True)
created = db.DateTimeField(default=utils.time_now, required=True)
updated = db.DateTimeField(default=utils.time_now, required=True)
tags = db.ListField(db.ReferenceField(Tag), default=[])
ratings = db.EmbeddedDocumentListField(Rating, default=[])
comments = db.EmbeddedDocumentListField(Comment, default=[])
url = db.URLField()
meta = {'indexes': [
{'fields': ['$title', '$description', '$tags.text'],
'default_language': 'english',
'weights': {'title': 10, 'description': 5, 'tags': 2}
}
]}
Вот мои два документа. Документ тега ссылается в поле списка документа Post. Когда я пытаюсь выполнить поиск с помощью текстового индекса, я могу успешно выполнить поиск по названию и описанию, но не по тегам. Кто-нибудь знает, почему. Я не нашел здесь никаких полезных примеров. http://docs.mongoengine.org/guide/text-indexes.htmlMongoEngine ReferenceField Text Index setup?