Каминари проблема разметки страницы - PullRequest
0 голосов
/ 28 августа 2011

В Каминари это работает:

<%= paginate @posts %>

Но если я сделаю что-то вроде:

<%= paginate @user.posts %>

Я получаю

undefined method `current_page' for #<Class:0x58378e0>      

Как мне это исправить? Я слышал, что помоглиоризированные_ресурсы, но я не знаю, как его использовать, чтобы исправить эту ошибку.

1 Ответ

4 голосов
/ 28 августа 2011

Поскольку в первой версии @posts, вероятно, был результатом выполнения чего-то вроде

   @posts = Post.page(2).per(50)

Итак, Каминари возвратил массив, подобный объекту, который ожидает paginate вспомогательный метод.

Когда вы вызываете @user.posts напрямую, вы на самом деле просто загружаете простую старую ассоциацию ActiveRecord.

Короткий ответ: вам нужно позволить Kaminari сгенерировать переменную, которую вы фактически используете, с помощью вспомогательного метода paginate

...