Форма поиска с использованием sunspot/solr

Я использую sunspot впервые и пытаюсь настроить поиск. полнотекстовый поиск работает нормально. однако у меня есть форма с окном поиска и несколькими фильтрами для логических полей, которые может выбрать пользователь. каким-то образом окно поиска работает нормально, но solr не выбирает отдельные логические значения в качестве дополнительных фильтров. также, когда я не выполняю поиск текста и просто хочу выполнить поиск по логическим полям, ничего не происходит. любая помощь будет оценена по достоинству:

это мой контроллер:

@search = Project.search do
   fulltext params[:search]
   facet(:master_bedroom)
   facet(:dining_room)
   facet(:bath)
   with(:master_bedroom, params[:mb]) if params[:mb].present?
   with(:dining_room, params[:dr]) if params[:dr].present?
   with(:bath, params[:p_bath]) if params[:p_bath].present?
 end    

у меня есть поля в модели:

searchable do
text :description
boolean :dining_room
boolean :bath
boolean :master_bedroom
end

и у меня есть следующее для моего взгляда:

<%= form_tag projects_path, :method => :get do %>

<%= text_field_tag :search, params[:search] %>
<%= check_box_tag :bath, 'true'%>
<%= submit_tag "Search", :name => nil %>

<% end %>

person jignesh    schedule 24.09.2011    source источник


Ответы (1)


Произошла ошибка в именовании переменных.

person jignesh    schedule 25.05.2012
comment
Хотите уточнить, где была эта ошибка? - person Michael Giovanni Pumo; 09.01.2014
comment
Я забыл за последние два года :). я смутно помню, что это была ошибка в написании одной из переменных. а, вот он в приведенном выше коде: with(:bath, params[:p_bath]) if params[:p_bath].present? он использует p_ там, где мой другой код этого не делает. - person jignesh; 10.01.2014