gpt4 book ai didi

ruby-on-rails - 将哈希数组转换为数组

转载 作者:数据小太阳 更新时间:2023-10-29 07:30:12 24 4
gpt4 key购买 nike

当使用 ActiveRecord 集合代理返回的对象时,如果在 View 中正常使用循环,但有时我只想将散列的一个公共(public)属性转换为数组。我发现我做了很多,这导致看起来有些冗长:

 forum_roles = []

@forum #=> [{id: 0, name: 'a'},{id: 1, name: 'b'}]

@forum.each do |role|
forum_roles << role.name
end

forum_roles #=> ['a','b']

只是想知道是否有更简单的方法到达 ['a','b']

最佳答案

使用Array#map当你有一个哈希数组时

forum_roles = @forum.map { |role| role[:name] }
forum_roles # ['a','b']

更新:

对于 ActiveRecord 对象,@vee 评论说有一个快捷方式

@forum.map(&:name)

如果您有一个 ActiveRecord 关系并且您只想要一个列的数组,请使用 pluck

@forum.pluck(:name)

关于ruby-on-rails - 将哈希数组转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22650438/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com