Rails разбивают на страницы существующий массив результатов ActiveRecord - PullRequest
6 голосов
/ 27 марта 2010

Я обычно использую will_paginate для разбивки на страницы в своем приложении, но столкнулся с проблемой поиска в моей функции поиска. Я использую Thinking Sphinx для полнотекстового поиска, который возвращает результаты с разбивкой на страницы. У меня проблема в том, что после того, как я получил результаты от Thinking Sphinx, мне нужно объединить их с некоторыми другими результатами и изменить их порядок.

Как только я закончу их обработку, у меня есть массив результатов, который сильно отличается от оригинала из TS. Поскольку может быть более 1000 результатов в этом разбиении на массивы является необходимостью. Проблема в том, что я не могу понять, как заставить will_paginate играть с существующим массивом.

Я провел некоторые исследования, и, похоже, единственные решения этой проблемы были сделаны несколько лет назад и основаны на старом встроенном классе Paginator. Самое последнее, что я нашел, которое использует will_paginate, было от devchix с середины 2007 года: http://www.devchix.com/2007/07/23/will_paginate-array/comment-page-1/ - я попробовал, но, похоже, мне это не помогло.

Существуют ли какие-либо современные методы применения нумерации страниц (предпочтительно через will_paginate) для существующих массивов результатов AR?

Ответы [ 2 ]

5 голосов
/ 27 марта 2010

Официальная вики will_paginate ссылается на это, хотя с 2008 г .:

http://www.pathf.com/blogs/2008/06/how-to-use-will_paginate-with-non-activerecord-collectionarray/

1 голос
/ 18 марта 2011

Я только что написал, как использовать will_paginate для массива в rails 3. Найдите здесь ответ, который я написал.

Ruby on Rails will_paginate массив

...