3
Listing Model - belongs_to :area
Area Model - has_many :listings
Я пытаюсь выполнить поиск с использованием Ransack с помощью флажков; где пользователь проверяет выбранные области, поиск возвращает все списки выбранных областей.Rails 3 - Ransack - check_box_tag
<%= search_form_for @search do |f| %>
<% areas = Area.all %>
<% areas.each do |area| %>
<%= check_box_tag('q[area_id_eq][]', area.id) %>
<%= area.location%>
<% end%>
<%= f.submit "SEARCH" %>
<% end %>
Консольный вывод:
Parameters: {"utf8"=>"✓", "q"=>{"area_id_eq"=>["1", "2"]}, "commit"=>"SEARCH"}
Completed 500 Internal Server Error in 4ms
NoMethodError - undefined method `to_i' for ["1", "2"]:Array:
Просто не знаю, как реализовать его принимать несколько значений флажков.
не забудьте исправить ярлык для параметров [: Q] [: area_id_eq_any] и проверить, если PARAMS [: Q] также равно – Wyatt
'<% = check_box_tag 'q [area_id_eq_any] []', area.id, params [: q] [area_id_eq_any] .include? (area.id.to_s)%>' должен работать, поскольку include будет естественно return 'true' или' false'. – barnett