如何从返回的ActiveRecord结果中提取ID列表,而无需单独重新查询ID
列?
例如:
people = People.all
people.get_ids #Returns an array of IDS
我目前的解决方案是循环people
并手动获取ID(这不是很优雅,恕我直言)
答案 0 :(得分:4)
您可以使用采摘方法:
e.g。 People.pluck(:id)
参考http://apidock.com/rails/ActiveRecord/Calculations/pluck
使用拔毛获取与获取所有结果后获取相同的过程相比会更好。
希望有所帮助..
答案 1 :(得分:4)
您可以使用map
方法
all_ids = people.map(&:id) #[1,2,3,4]
答案 2 :(得分:2)
ids = People.all.map(&:id)
此代码将返回ID数组