如何正确筛选 ruby 枚举器



我有一个帐户数组/枚举器。我想做的只是按invoice_ref过滤。所以我基本上想将我的数组拆分为具有相同invoice_ref的多个数组

我仍在学习轨道,我无法找出选择方法的正确语法。大多数文档都涉及数字和字符串,但我有一系列帐户

accounts.each.select do |invoice_ref|
invoice_ref == invoice_ref
end

我不知道该怎么做

我们不知道帐户的外观; 它可以像

p accounts.group_by( &:invoice_ref)

我希望您尝试使用相同的值对数组进行分组:

['1', '1', '2', '2'] to [['1', '1'], ['2', '2']]

请尝试以下操作:

['1', '1', '2', '2'].group_by(&:itself).values

这就是帐户模型的样子,这只是 dev 上的虚拟数据

id: 21,
product_id: 108,
member_id: 20,
username: "5408",
realm: "infinity.co.za",
password: "9BtyPq3q",
comments: "",
contract_term: 1,
status: nil,
created_at: Mon, 11 May 2020 12:01:40 UTC +00:00,
updated_at: Wed, 20 May 2020 12:43:53 UTC +00:00,
invoiced: false,
invoice_ref: "4827132"

当我这样做时

accounts.each.class => Enumarator

我想过滤 Enumarator 并按invoice_ref对它们进行分组

这有意义吗?

最新更新