0

django haystack(ElasticSearch検索エンジンを使用)を使用しており、オートコンプリートとは異なるオートサジェスト機能を実装したいと考えています。

たとえば、インデックスが付けられた小さなデータセット(テーブル行)について考えてみます。

When your code is all set
And you have finished it all
Your goals have been met
And you feel not so small

これは私が実装したいものです:

First input query(for search index): 'finished coding'
expected search result:
    When your code is all set
    And you have finished it all

Second, input query(for search index): 'finished coding! goals met!'
expected search result:
    When your code is all set
    And you have finished it all
    Your goals have been met

haystack'sSearchQuerySet().autocomplete(content=above query)は上記の結果を生成しません。

そのようなクエリセットを構築する方法は?

また、stackoverflowの質問ページにも表示されます。つまり、タイトルフィールドに入力すると、すでに回答がある可能性のある質問のリストが表示されます。

4

1 に答える 1

1

以下を使用して、期待される結果を得ました。

SearchQuerySet().filter(content__in=query.split())

トークン化は検索エンジンのタスクであるため、正しい方法ではないかもしれませんが、私にとってはうまくいきました。

于 2013-02-16T18:01:00.587 に答える