1
ユーザ入力に基づいてgroup_byパラメータを変更したい。 例: データは、どの私はグループに行きます:RubyまたはRuby on Rails動的に変化するパラメータのgroup_by
result = [{"result_1"=>"01","result_2"=>"August","result_3"=>"2016","result_4"=>264},{"result_1"=>"02","result_2"=>"August","result_3"=>"2016","result_4"=>49},{"result_1"=>"03","result_2"=>"August","result_3"=>"2016","result_4"=>53}]
私はルビーのGROUP_BYは、複数のパラメータをどのように動作するかを知っています。 result_1とresult_2.ItにGROUP_BYする
は、この方法を行うことができます。コードグループの上
result.group_by{|h| [h["result_1"],h["result_2"]}
result_1とresult_2.Hereに基づいて、データをパラメータがhard_codedされています。 私は私がとほぼそれをやりたい
result.group_by{|h| [h["result_3"],h["result_4"]]}
のようにGROUP_BYたいパラメータ渡さdynamically.Asに基づいて
dynamic_parameter = ["result_3","result_4"]
をGROUP_BYたい:
dynamic_parameters.each do |parameter|
result.group_by{|h| [h[parameters]}
end
またはそれに類似しました:
result.group_by{|h| [h[parameters[0]],h[parameters[1]]}
これらのresult_3およびresult_4パラメータは、dynamic_parameter配列値に基づいています。
注:Group_byは配列要素によって異なるはずです。
が、これはこれを簡単に行うことができるとは思わなかったyou.Iありがとう、 – ashr81
@ ashr81 Ruby Worldへようこそ:) –