0

尝试使用使用 Solr 的 Sunspot Gem 实现搜索。全文搜索工作正常,但是添加额外的搜索参数返回零结果。红色所有文档但无济于事我没有看到我的错误,如果有的话在下面的代码中。关于如何解决这个问题的任何建议?我重新索引了现有记录。

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 回答