2016-12-05 64 views
0

我有一个用户模型。用户模型具有名称,phone_no,acc_no,...字段。我想要摘取3个字段,即name,phone_no和acc_no。对于我使用如何在Rails中使用nil值来获取多个属性?

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] 
] 

是否有任何如何做到这一点?

+2

不能。 'pluck' **应该返回第二个代码示例中的内容,而不是第一个代码示例中的内容。 –

+0

它在我的代码中。 OP你确定你没有在某处使用“compact”吗? – Fallenhero

+0

你使用mongoDB吗?试试我的答案 –

回答

2

试试这个

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