私は人の名前の検索機能に取り組んでいます。これは、ビジネスを行っている州でフィルタリングできます。一部の人々は複数の地域でビジネスを行っているので、私の質問は、フィールド内の任意の州で正確な検索を実行できるように、州のリストをフィールドに保存するにはどうすればよいですか?
サンプルデータ:
| | 人物名 | 州 | |=============|============| | | ジョン・ドウ | カリフォルニア州、ネバダ州、アリゾナ州 | | | ジョン・スミス | ニューヨーク、ニュージャージー州 | | | ... | |=============|============|
ここに私のコードがあります: # search_indexes.py
class ProfileIndex(RealTimeSearchIndex):
    text = indexes.CharField(document=True) # the person's name
    state = indexes.CharField(faceted=True)
    def prepare_text(self, profile):
        return profile.display_name
    def prepare_state(self, profile):
        return ???????
# search code
search_string = "John"
search_state = "CA"
search_results = SearchQuerySet().models(Profile) \
            .filter(text=search_string, state=search_state) \
            .load_all()
# Should only return John Doe because of the search_state constraint...
ステミング/ファジーマッチングなどのsolrマジックを行わずに、solrに州名を正確に解析してもらいたい...
これは基本的なリクエストのようですが、何が表示されないのですか?
ありがとう!