【问题标题】:Remove group_by field from final result rails从最终结果栏删除 group_by 字段
【发布时间】:2019-10-16 12:43:36
【问题描述】:

我正在使用 Rails 5.2.0。

我有一个City 模型,其中id is a Primary keyname 代表城市名称。

我正在使用 group_by 来实现这样的目标:

预期输出:

{10571=>"Μorocco Town", 17741=> "S-HERTOGENBOSCH"}

我正在尝试这样的事情:

City.all.select('name', 'id').group_by(&:id)

我得到的结果是:

10571=>[#<City id: 10571, name: "Μorocco Town">], 17741=>[#<City id: 17741, name: "S-HERTOGENBOSCH">]}

关键部分是正确的。
我需要get rid of the id field 传入哈希值,并且需要单个哈希值而不是名称为键的数组。

有什么建议吗?

使用 group_by 不是强制性的。任何其他内置函数也可以使用。

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-5


    【解决方案1】:

    Pluck 是你的朋友...

    City.pluck(:id, :name).to_h
    

    【讨论】:

    • 这个很干净很简短
    猜你喜欢
    • 1970-01-01
    • 2017-11-24
    • 1970-01-01
    • 2020-12-13
    • 2021-10-23
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多