Railsアプリケーションを3.2.2から5.1.4にアップグレードしています。onparamsを直接使用すると、mapメソッドでgettignエラーが発生します。エラー:
actionController :: Parametersの未定義のメソッド `map '
次の行。
@assignments= params[:assignments].map {|_k, value| Assignment.new(value.merge assignment_params)}
Rails 5.1?
to_unsafe_h
を使用して、パラメータをハッシュに変換してみることができます。
@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)}