我在客户模型调用中使用以下查询来获取我想要的交易集。
transactions = sub_account.transactions
transaction_items = transactions.map{|transaction| [transaction.transaction_items]}
但是,这将返回散列数组的数组。从 rails 控制台
[ [# <TransactionItem id: 29, amount: 20>, #<TransactionItem id: 35, amount: 40>],<br>
[# <TransactionItem id: 31, amount: 30>, #<TransactionItem id: 38, amount: 30>],<br>
[# <TransactionItem id: 43, amount: 30>, #<TransactionItem id: 21, amount: 40>],<br>
]
这个过程运作良好。但是现在我正在尝试对 transaction_items 运行 where 查询,但不能因为它们嵌入在数组中。这是我无法运行的最终所需查询。
transaction_items.where(:amount => 30).sum("amount")
我知道你可以压缩一个数组,但你能解压缩它吗?我找不到任何关于它的文档。如果没有解压缩,我可以调整 where 查询以在嵌入式数组上工作吗?
谢谢。