<tr>
<th><%=f.label(:id, "Choose car")%></th>
<td><%= f.select(:id, @cars_all.map{|c| [c.name, c.id]}) %></td>
</tr>
<tr>
<th><%=f.label(":list_id", "Choose List")%></th>
<td><%= f.select(:list_id, @lists.map{|s| [s.name, s.id]}) %></td>
</tr>
我想获取这两个选择值的值,以便在控制器中将它们添加到联合表的数据库中,
@car_id = params[:id]
无法正常工作,也无法获取数据,是否可以回复这些值
答案 0 :(得分:0)
用户无法直接访问控制器中的参数,它将包含任何与form_for object_name相同名称的哈希值 假设:
<%= form_for(@profile) do |f| %>
<%= f.text_field :first_name %>
<%= f.text_field :last_name %>
<%= f.submit %>
<% end %>
所以参数将在控制器中
"profile"=>{
"first_name"=>"Daniel",
"last_name"=>"Clark"
}
我可以在
中访问PARAMS [:档案] [:如first_name]
所以在你的情况下,请检查form_for对象并通过它访问它。
您可以通过
访问它PARAMS [form_for_object_hash_name] [:ID]
或尝试将调试器放在控制器上并检查正确的参数