【问题标题】:Select hash id from an array of hashes从哈希数组中选择哈希 id
【发布时间】:2012-05-21 12:20:26
【问题描述】:

假设我有一个包含多个哈希的数组

[#<Campaign id: 144> , #<Campaign id: 146>]

为了简单起见,我删除了其他字段,但该对象确实有很多字段。我想要结束的是一组唯一的哈希 ID,例如:[144, 146]。当然,有很多方法可以天真地做到这一点,但我想知道最好的方法是什么。我正在努力寻找为此目的而构建的函数。

【问题讨论】:

  • 困惑,那些看起来像对象,而不是哈希。您不能使用...收集每个数组元素的 id 属性吗?

标签: ruby-on-rails ruby


【解决方案1】:
your_array.map(&:id)

your_array.map{|i| i.id}

【讨论】:

    【解决方案2】:

    您所拥有的似乎不是散列数组,而是一些其他类型对象的数组 (Campaign)。你应该可以通过object_id 属性和.map() 得到这个:

    your_array.map(&:object_id)
    

    【讨论】:

    • 大概,如果是 Rails,你实际上会使用 array.map(&amp;:id)array.map { |object| object.id } 的简写)
    猜你喜欢
    • 2017-01-16
    • 2018-04-24
    • 2011-04-20
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    • 2021-02-05
    • 2015-03-06
    • 1970-01-01
    相关资源
    最近更新 更多