0

Solr.Fulltext 検索を使用している Sunspot Gem で検索を実装しようとすると正常に動作しますが、追加の検索パラメーターを追加すると結果が 0 になります。すべてのドキュメントを赤くしますが、以下のコードにエラーがあったとしても、役に立ちません。これを修正する方法についてアドバイスはありますか?既存のレコードを再インデックスしました。

ProfilesController#index

@search = Profile.search do

      fulltext params[:search]

      if params[:search].present?
        fulltext params[:description] do
          highlight :description
        end
      end

      if params[:gender].present?
        with :gender
      end
      paginate(:page => params[:page], :per_page => 2)
    end

    @profiles = @search.results

profile.rb モデル

searchable do
    text :description
    string :gender 
end

私の検索フォーム:

= simple_form_for profiles_path, :method => :get  do |f|

  = text_field_tag :search, params[:search]  << this works
  = text_field_tag :gender, params[:gender]  << adding this line returns 0 result

パラメータの性別は、引用符なしで「男性」または「女性」にすることができます。このパラメータもフォームから送信されます。

4

1 に答える 1

2

これを試して

if params[:gender].present?
      with :gender,  params[:gender]
  end

選択タグを使用する

<%= select_tag 'gender', options_for_select([['Male', 'male'], ['Female', 'female']]), :prompt => 'Select Gender' %>` 
于 2012-02-06T13:19:59.697 に答える