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
Другие вопросы по тегам