在Rails中,find_with
方法用于查询数据库中的对象,并返回一个对象的数组。select
方法用于选择需要查询的字段。当使用 find_with:select
后,返回的对象不会自动保存。
如果需要保存对象,可以使用 save
方法来手动保存对象。例如:
@users = User.find_with(:select => "name, age").select { |user| user.age > 18 }
@users.each do |user|
user.save
end
在上面的代码中,我们使用 find_with:select
查询了所有年龄大于18岁的用户,并将结果保存在 @users
变量中。然后,我们使用 each
方法遍历数组,并使用 save
方法手动保存每个对象。
需要注意的是,在使用 find_with:select
方法时,必须指定要查询的字段。如果不指定字段,则默认查询所有字段,这可能会导致性能问题。
领取专属 10元无门槛券
手把手带您无忧上云