Ruby on rails 在铁轨上拔出散列
有吃杂烩的勇气吗 我有一个如下所示的散列,我试图用下面的命令来清除。我知道可以用不同的方法来做。但我不知道是否有以下的拔毛方法Ruby on rails 在铁轨上拔出散列,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,有吃杂烩的勇气吗 我有一个如下所示的散列,我试图用下面的命令来清除。我知道可以用不同的方法来做。但我不知道是否有以下的拔毛方法 hash = {"0"=>{"user_id"=>"1"}, "0"=>{"user_id"=>"2"}} hash.pluck("user_id") Pull仅适用于ActiveRecords 参考-Pull仅适用于ActiveRecords 参考-这应该有效 hash.inject([]) do |acc, el| acc <&
hash = {"0"=>{"user_id"=>"1"}, "0"=>{"user_id"=>"2"}}
hash.pluck("user_id")
Pull仅适用于ActiveRecords
参考-Pull仅适用于ActiveRecords 参考-这应该有效
hash.inject([]) do |acc, el|
acc << el.last.try(:[], 'user_id').to_i
acc
end
这应该行得通
hash.inject([]) do |acc, el|
acc << el.last.try(:[], 'user_id').to_i
acc
end
你能做的最好的事情就是一张简单的
地图
hash = {"0"=>{"user_id"=>"1"}, "1"=>{"user_id"=>"2"}}
hash.values.map{|h| h['user_id']} # => ["1", "2"]
如果需要,您甚至可以将其作为
pulk
方法添加到Array
。当然,“你能”并不意味着“你应该”:)你能做的最好的事情就是简单的映射
hash = {"0"=>{"user_id"=>"1"}, "1"=>{"user_id"=>"2"}}
hash.values.map{|h| h['user_id']} # => ["1", "2"]
如果需要,您甚至可以将其作为pulk
方法添加到Array
。当然,“您可以”并不意味着“您应该”:)ActiveSupport添加了ActiveSupport添加了试一试是怎么回事?是的,我知道这是rails方法而不是ruby。所以,根据我们谈论的ror标签,我的意思是你们不需要它。是的,这是一种习惯:)无论如何,你们的方法更好。怎么了试试?是的,我知道这是一种rails方法,而不是ruby。所以根据我们谈论ror的标签。我的意思是你不需要它。是的,这是一种习惯:)无论如何,你的方法更好。是rails 3还是rails 4?伙计,今天早上有人在投反对票:PIs是rails 3还是rails 4?伙计,今天早上有人在投反对票:P
hash = {"0"=>{"user_id"=>"1"}, "1"=>{"user_id"=>"2"}}
hash.values.map{|h| h['user_id']} # => ["1", "2"]