如何从选择的活动记录中删除id?

Ved*_*ngh 4 ruby-on-rails-4.2

在控制台上查询

User.select('email','dob')
Run Code Online (Sandbox Code Playgroud)

回报,

[#<User:0x000000084a9b08 id: nil, email: "xyz@zyx.com">,
Run Code Online (Sandbox Code Playgroud)

为什么我在rails 4中获得id属性?如何摆脱这个?

cop*_*sis 21

如果你想要键和值,Pluck只返回值,然后尝试这样做:

User.select('email','dob').as_json(:except => :id) 在我的例子中,所需的结果是一个JSON对象.因此,在as_json方法中,您可以排除所需的任何列

(另外,您也可以调用对象方法或访问关联的表)


Par*_*gra 2

这将为您提供所需的输出

User.pluck(:email, :dob)
Run Code Online (Sandbox Code Playgroud)