如何在 Rails 中提取多个值为 nil 的属性?

How to pluck multiple attributes with nil values in Rails?

我有一个用户模型。用户模型有一个名称,phone_no,acc_no,...字段。我想提取 3 个字段,即名称、phone_no 和 acc_no。为此,我正在使用

User.pluck(:name, :phone_no, :acc_no)

phone_no 和 acc_no 没有存在验证,这就是为什么它给了我以下结果

[
 ['xyz', '1234'],
 ['pqr', '4567', '12345678'],
 ['abc']
]

我需要这样的结果

 [
  ['xyz', '1234', nil],
  ['pqr', '4567', '12345678'],
  ['abc', nil, nil]
 ]

有什么办法吗?

试试这个

User.only(:name, :phone_no, :acc_no).map { |u| [u.name, u.phone_no, u.acc_no] }