2014-09-26 4 views
0

Im пытается создать форму, которая находит продукты с флажками. Я думаю, проблема заключается в том, что я не передаю массив моему контроллеру. Кто-нибудь знает, как это исправить?Форма поиска с флажками

Модель

def self.search(params) 
    arel = order('created_at DESC') # note: default is all, just sorted 
    arel = arel.where('name LIKE ?', "%#{params[:search]}%").order('created_at DESC') if params[:search].present? 
    arel 
end 

Контроллер

def index 
    @products = Product.search(params) 
end 

Просмотр

<%= form_tag(products_path, :method => "get", id: "search-form") do %> 
<%= check_box_tag :search, "product1", nil %> 
<%= check_box_tag :search, "product2", nil %> 
<%= submit_tag "Search" %> 
<% end %> 
+0

Какая ошибка? – bkdir

+0

поиск работает, но когда я нажимаю оба флажка, я получаю только один результат. – jblom

ответ

0

Оба флажков одинаковы :search так только последний проверил один посылается. Попробуйте что-то вроде этого:

<%= check_box_tag "search[]", "product1" %> 
<%= check_box_tag "search[]", "product2" %> 
+0

Да, тогда он должен быть сохранен в массив. Однако флажок не показывает никаких результатов, когда я меняю его на поиск []. – jblom

Смежные вопросы