如何根据 ruby 中的特定索引获取嵌套二维数组中的唯一值

How to get the unique values in nested 2d array based on specific index in ruby

如何根据二维数组的特定索引获得唯一的二维嵌套数组?

基本上,我想在下拉列表中显示属于某个关联模型的唯一名称。这是查询的样子

Product.where(live: true).includes(:primary_concern).map{|q| [q.primary_concern.name, q.id]}

但它 returns 所有的名字,而我只想在下拉列表中显示唯一的名字。

我尝试使用 rails 分组依据,但它抛出未定义的 table 错误,因为 primary_concern 本身不是模型,它与模型的关联假设 关注,具有不同的 foerign_key 名称

这应该有效:

Product.where(live: true).includes(:primary_concern).map{|q| [q.primary_concern.name, q.id]}.uniq(&:first)