繁体   English   中英

用于#的未定义方法`map&#39; <ActionController::Parameters> Rails 5.1

[英]undefined method `map' for #<ActionController::Parameters> Rails 5.1

我正在将我的rails应用程序从3.2.2升级到5.1.4。 我通过使用params直接在map方法上得到错误。 错误:

ActionController :: Parameters的未定义方法`map'

在下面的行。

@assignments= params[:assignments].map {|_k, value| Assignment.new(value.merge assignment_params)}

在rails 5.1中做任何替代方案吗?

您可以尝试使用to_unsafe_h将params转换为hash:

@assignments= params[:assignments].to_unsafe_h.map {|_k, value| Assignment.new(value.merge assignment_params)}

或者,您可以使用each参数迭代:

@assignments=[]
params[:assignments].each{|(_k, value)| @assignments << Assignment.new(value.merge assignment_params)}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM