rails пейджинг нескольких таблиц на одной странице
У меня есть две разные таблицы на одной странице, и я хочу использовать пейджинг для каждой из них.
Для сортировки/поиска я изменил имена каждого объекта страницы, поэтому я сделал это как
@pagy_inv, @invoices = pagy @invoices.reorder(sort_column_show_city_invoices => sort_direction_show_city_invoices), items: params.fetch(:count, 10)
и
@pagy_ord, @orders = pagy @orders.reorder(sort_column_show_city_orders => sort_direction_show_city_orders), items: params.fetch(:count, 10)
который отлично работает для сортировки и поиска, но когда я пытаюсь изменить страницу, он отправляет параметр страницы и пытается изменить страницу для каждой таблицы, и поэтому, если в одной таблице 5 страниц, а в другой 10, и я пытаюсь перейти на страницу 10, это не удается потому что одна из таблиц не может перейти в несуществующую таблицу.
Я думал изменить параметр страницы (например, page_inv и page_ord), но как это сделать? Или есть простой способ изменить страницу только для таблицы из выбранного объекта страницы?
1 ответ
Как вы уже поняли, пейджи используют значение по умолчанию (которое:page
): если вы используете более одного экземпляра на одной странице, вы должны различать:page_param
разных экземпляров или их будут использовать все одинаковые.
Вы можете передать это вpagy
метод (как вы сделали с:items
).