Рельсы "Load more ..." вместо пагинации - PullRequest
3 голосов
/ 23 марта 2010

У меня есть список элементов, и я использовал will_paginate до сих пор, но я хотел бы иметь что-то вроде «загрузить больше ...» в нижней части списка.Есть ли простой способ сделать это с помощью will_paginate или мне нужно прибегнуть к какому-то другому методу здесь?

Из того, что я знаю, это лучший путь, так как тогда мне не нужен счетчик SQLиз записей.И это действительно не имеет значения, если есть 9 847 страниц, никому не понадобятся записи, кроме первых нескольких страниц.

Ответы [ 2 ]

6 голосов
/ 23 марта 2010

Посмотрите, как Twitter или Brightkite реализуют свои кнопки "Загрузить еще" (для JavaScript).Вы по-прежнему хотите иметь какой-то механизм разбиения на страницы в своем приложении rails.Вероятно, он не должен быть таким сложным, как will_paginate.Может быть, что-то вроде этого в вашем контроллере:

# where 10 is the number of records per page
Record.find(:all, :conditions => {:offset => params[:page] * 10, :limit => 10})

Затем при вызове AJAX для получения большего количества записей вам нужно будет возвращать правильный номер "страницы" и обязательно увеличивать его каждый раз, когда загружается большекнопка нажата.

4 голосов
/ 23 марта 2010

Смотрите этот скринкаст , называемый endless page, для получения подробной информации о реализации решения вашей проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...