Rails Kaminari ошибка разбиения на страницы с Ransack
Я использую Ransack с Kaminari - мой контроллер:
def index
@q = Household.search(params[:q])
@households = @q.result
end
Соответствующая часть моей точки зрения:
- @households.each do |household|
%tr
%td= link_to household.household_name, edit_household_path(household)
%td= household.box
%td= household.thumbs.html_safe
%td= household.neighbors.count
%td= household.visits.count
%td= household.last_visit
%td
= link_to 'Edit', edit_household_path(household), class: 'btn'
= link_to 'Destroy', household, confirm: 'Are you sure?', method: :delete, class: 'btn btn-mini btn-danger'
= paginate @households
Это дает мне ошибку:
undefined method `current_page' for #<ActiveRecord::Relation:0x007fd4cd3a0b98>
Если я изменю
= paginate @households
в
= paginate households
Я в порядке, но пагинацию я получаю только тогда, когда я выполняю поиск, когда у меня есть бланк, я не делаю нумерацию страниц - я использую приличную экспозицию, которая позволяет моей семье вместо @household
1 ответ
Решение
Измените свой контроллер следующим образом.
def index
@q = Household.search(params[:q])
@households = @q.result.page(params[:page]).per(5)
end