Я пытаюсь найти текст в базе данных mongodb, используя python и mongoengine. Документы в mongodb структурированы следующим образом:
{'title': "Food will define the future',
'paragraphs':[
{'text': 'Consumers in the UK are drinking less milk',
'labels': ['market trends', 'UK']},
{'text': 'In France, people eat a lot of cheese',
'labels': ['market trends', 'France']}
]
}
Используя mongoengine, я хочу искать ключевые слова (например, «молоко») в текстовых полях каждого из документов следующим образом:
class Article(db.Document):
title = StringField()
paragraphs = ListField()
selection = Article.objects(paragraphs__text__contains = 'milk')
Похоже, что оператор contains ничего не делает. Возвращаются только абзацы, которые состоят из слова «молоко» и ничего другого (т.е. точное совпадение). Что не так? как это сделать правильно?