投稿内の用語に重みが割り当てられ、次のような埋め込みドキュメントとして使用される MongoDb (MongoEngine) を使用して逆インデックス検索エンジンを実装しようとしています。
class Term(db.EmbeddedDocument):
t = db.StringField()
weight = db.FloatField()
class Post(db.Document):
terms = db.ListField(db.EmbeddedDocumentField(Term))
次に、用語を指定すると、次のクエリを使用してその用語を含む投稿を見つけることができます。
post_list = Post.objects(terms__t=term)
ただし、これは投稿のリストを返しますが、埋め込まれた用語のリストを反復して用語を探すことなく、返された各投稿の用語の重みを見つけるにはどうすればよいでしょうか? 返された投稿の重みも自動的に返すように投稿をクエリする方法はありますか?
また、MongoDB で検索エンジンを実装するためのより良い方法を誰かが持っていれば幸いです。
ありがとう!