Я написал свою собственную функцию для разбивки на массивы объектов. Вы можете изменить код в соответствии со своими потребностями:
def array_paginate page, per_page, array
page = page.to_i
per_page = per_page.to_i
total_entries = array.count
total_pages = (total_entries / per_page.to_f).ceil
data = format_records( array[ (page-1)*per_page..page*per_page-1] )
{
page: page,
total_pages: total_pages,
data: data,
}
end