我有以下型号:
class User < ActiveRecord::Base
has_and_belongs_to_many :clubs
accepts_nested_attributes_for :clubs
class Club < ActiveRecord::Base
has_and_belongs_to_many :users
class UsersClubs < ActiveRecord::Base
end
在我的用户控制器中,我指定了:
def user_params
params.require(:user).permit(:club_ids => [])
end
在我的表格中,我有:
<%= select_tag :club_ids, options_from_collection_for_select(@Club.all, "id", "name"), :multiple=>true%>
点击表单提交后,我看到club_ids与选择表单中的值一起发送,但是当我调用user.update(user_params)
时,它没有将它们添加到数据库中。我已经查看了其他示例并相应地进行了更改,但仍然无效。我错过了什么?
答案 0 :(得分:0)
尝试将:club_ids => []
放入哈希值。
例如
def user_params
params.require(:user).permit({:club_ids => []})
end
引自here