Пагинация хешей в рельсах - PullRequest
0 голосов
/ 20 января 2012

Я использую камень will_paginate для разбивки на страницы приложения rails.Я строю древовидную структуру (в основном хеш-структуру) с одной из моих коллекций.Это выглядит так:

Root
 ╰─╴Suite
     ╰─╴TestCase
         ╰─╴Ic

Я хочу разбить это на страницы.Я попробовал следующий код, но он выдает ошибку: undefined method 'paginate' for #<Hash:0xb707f190>.

Код контроллера:

def index
  @ics = Ic.search(
           params[ :root_name ],  params[ :suite_name ],
           params[ :case_name ],  params[ :name ],
           'f'
         )

  @ics_temp = Ic.make_tree( @ics ).paginate :per_page => 100,
                                            :page     => params[ :all_ics ]
end

Просмотр кода:

- form_tag "/ics/mass_action", :method => :post, :multipart => true do

  <div id="update_ics_table">
  = render "listing",
      :show_check_boxes => show_check_boxes,
      :root_name        => params[:root_name],
      :suite_name       => params[:suite_name],
      :case_name        => params[:case_name],
      :name             => params[:name],
      :ic_filter        => 1
  </div>

  = will_paginate @ics_temp, :param_name => :all_ics

Также, пожалуйста, помогите мне скак это исправить.

1 Ответ

0 голосов
/ 20 января 2012

Чтобы разбить на страницы Hash, вам нужно добавить метод paginate в класс Hash.
Вот ссылка, которая показывает вам, как это сделать с массивом.

Просто сделайте, как говорится, но измените функцию в соответствии с Hash.

...