从控制器(collection_select)获取参数的问题

时间:2015-05-21 17:41:30

标签: ruby-on-rails ruby-on-rails-4

我正在使用collection_select将param product_id从视图传递给控制器​​,但是我在获取该值时遇到了问题。其他参数都很好。如果我执行aux = params[:product_id]之类的操作,它会保存值0而不是1,这是控制器收到的值,如您在请求日志中看到的那样。任何帮助将不胜感激!

PS:我认为它可能与你在product_id参数周围可以看到的花括号有关,正如你在请求日志中看到的那样

<%= collection_select(:params, :product_id, Product.all, :id, :name, :prompt => true) %>



Parameters:

{"utf8"=>"✓",
 "authenticity_token"=>"hE4qrSZnI8LLy6sNzR2fkRxKZpFoOHZLun6Z/cIsHDxGcCaC+zVPLk1qYFhf6iuhbmsZX0us75FIiqJ7c06Mxw==",
 "params"=>{"product_id"=>"1"},
 "quantity"=>"1",
 "event_id"=>"5",
 "commit"=>"GO!",
 "method"=>"post"}

1 个答案:

答案 0 :(得分:1)

您正在真实params内发送密钥params,以便访问您的值,如下所示:

params[:params][:product_id]

或使用:

collection_select(:object, :product_id, Product.all, :id, :name, prompt: true)

获取params中的product_id

相关问题