ruby-on-rails – 在Ruby中将哈希数组转换为一个哈希值
发布时间:2020-12-17 04:17:46 所属栏目:百科 来源:网络整理
导读:我有一个带有数组的哈希数组,看起来像这样: result = [ {"id_t"=["1"],"transcript_t"=["I am a transcript ONE"]},{"id_t"=["2"],"transcript_t"=["I am a transcript TWO"]},{"id_t"=["3"],"transcript_t"=["I am a transcript THREE"]}] 如果可能的话,我
我有一个带有数组的哈希数组,看起来像这样:
result = [ {"id_t"=>["1"],"transcript_t"=>["I am a transcript ONE"]},{"id_t"=>["2"],"transcript_t"=>["I am a transcript TWO"]},{"id_t"=>["3"],"transcript_t"=>["I am a transcript THREE"]} ] 如果可能的话,我想做的就是将它变换成一个哈希,其中每个key =>值对取自每个哈希的值.我不认为我解释得那么好,所以这就是我的意思: end_result = { "1"=>"I am a transcript ONE","2"=>"I am a transcript TWO","3"=>"I am a transcript THREE" } 我一直在寻找Stack Overflow和谷歌的各种方法,但我在这个过程中让自己感到困惑.关于如何实现这一点的任何想法? 解决方法
我认为解决方案的关键是Hash [],它将根据键/值数组创建一个Hash,即
Hash[[["key1","value1"],["key2","value2"]]] #=> {"key1" => "value1","key2" => "value2"} 只需添加一组地图,您就有了解决方案! result = [ {"id_t"=>["1"],"transcript_t"=>["I am a transcript THREE"]} ] Hash[result.map(&:values).map(&:flatten)] (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |