check_box_tag仅将最后一个复选框值传递给params

时间:2014-12-24 09:53:47

标签: ruby-on-rails ruby-on-rails-4 ruby-on-rails-4.1 form-helpers

我的@organization对象有一个form_builder,我在其中插入了check_box_tag

form_for @organization do |f|
  f.text_field :name
  City.all.each do |city|
    check_box_tag(:cities, city.id)
  end
  f.submit
end

CityOrganization没有关系。

我应该如何编写代码,例如所有复选框'值被传递给params?

2 个答案:

答案 0 :(得分:1)

从Controller / Model本身获取城市:

@cities = City.all

然后,您可以使用:

  <% @cities.each do |city| %>
    <%= check_box_tag 'city_ids[]', city.id -%>
  <% end %>

参考:http://apidock.com/rails/ActionView/Helpers/FormTagHelper/check_box_tag

希望有所帮助:)

答案 1 :(得分:0)

看看collection_check_boxes

f.collection_check_boxes :city_ids, City.all, :id, :name