我需要一种方法来获取模型的前n项。 Item.first(n)
,Item.all[1..n]
会这样做,除非它们返回一个数组,而不是一个对象。
如何将其作为ActiveRecord对象获取?
irb(main):135:0> Player.where(game_id: 1).class
=> Player::ActiveRecord_Relation #Ok
irb(main):136:0> Game.first.players.class
=> Player::ActiveRecord_Associations_CollectionProxy #Ok
irb(main):137:0> Player.where(game_id: 1).first(2).class
=> Array #Not Ok
我想在返回的玩家集合上运行update_all
,我不能在阵列上执行此操作。
答案 0 :(得分:4)
你做.limit(n)
将此与.offset
相结合,您就会有分页。