4

検索を拡張するにはどうすればよいですか?
ユーザーが検索ボタンを押したときに users_controllers#index でユーザーを検索したいと思います。

今、私は3つのモデルを持っています。

ユーザー > User_profile > 都道府県

User_profile には、user_id や、都道府県 ID などの列があります。

都道府県モデルでは、ID と名前があります (例: カリフォルニア州、ニューヨーク州)

これで、models/user.rb を次のようにセットアップしました。都道府県検索を追加したい場合、これに何を追加すればよいですか?ユーザーはCaliforniaと入力できるはずで、検索にヒットします。

searchable do 
    text :user_profile_nickname do
        user_profile.nickname
    end

    text :user_profile_introduction do
        user_profile.introduction
    end

    text :tag_list do 
        tag_list
    end 

end
4

1 に答える 1

1

各ユーザーはドキュメントとして Solr に保存されます。ユーザー ドキュメントを検索できるようにするには、ユーザー ドキュメントに事前情報を指定する必要があります。

試す:

searchable do 
  text :user_profile_nickname do
    user_profile.nickname
  end

  text :user_profile_introduction do
    user_profile.introduction
  end

  text :tag_list do 
    tag_list
  end

  string :prefacture do
     user_profile.prefacture.name
  end

end

プリファクチャでステミングなどのテキスト処理を適用する必要がないため、テキストの代わりに文字列を使用します。また、Sunspot では、テキスト フィールドにファセットを構築することはできないと思います。

于 2013-01-14T00:10:43.430 に答える