我有一个Rails 3应用程序,我正在尝试从单个表单创建多个数据库记录。
我有一个模型,内容,作为body和id的属性。我有一个视图,显示一个列出所有记录的表单,并在其旁边放置一个复选框(并将值设置为true / checked)。用户可以选择取消选择他们不想要的内容记录。
<%= form_tag 'contents' do %>
<% @contents.each do |content| %>
<%= label_tag content.body %>
<%= check_box_tag content.id, content.body, true %>
<% end %>
<br />
<%= submit_tag "Next" %>
<% end %>
当这个形式出现时,我会看到这样的参数:
{"utf8"=>"✓",
"authenticity_token"=>cooltoken",
"1"=>"asdfasfdf",
"2"=>"asdfasdf adf",
"3"=>"asdf asdf asdf",
"commit"=>"Next",
"action"=>"create",
"controller"=>"contents"}
但我想要的是一个看起来像这样的params哈希:
{"utf8"=>"✓",
"authenticity_token"=>"cooltoken",
'user_selections' => {
"1"=>"asdfasfdf",
"2"=>"asdfasdf adf",
"3"=>"asdf asdf asdf",
}
"commit"=>"Next",
"action"=>"create",
"controller"=>"contents"}
如何将内容信息推送到自己的哈希(我在上面调用'user_selection'哈希)?
答案 0 :(得分:2)
试试这个:
<%= check_box_tag content.id, content.body, true, { name: "user_selections[#{content.id}]" } %>