Как добавить простой выпадающий список в rails для страниц

#ruby-on-rails #drop-down-menu #pagination

#ruby-on-rails #выпадающее меню #разбивка на страницы

Вопрос:

Я использовал will_paginate для разбиения на страницы, теперь я хочу контролировать, сколько записей на одной странице. Я знаю, как взаимодействовать с данными из select_tag. пожалуйста, скажите мне, как вернуть данные в @page в контроллере.

Я использовал

 <td><%= select_tag "count", "<option>10</option> <option>20</option>".html_safe%></td>
  

Контроллер

 def index
  @page = 10;
  @users = User.order(:username).joins(:biography).where("`is_active?` = true AND `last_sign_in_at` > DATE_SUB(NOW(), INTERVAL 6 MONTH) ").paginate(:page => params[:page], :per_page => @page)
end
  

Комментарии:

1. Можете ли вы опубликовать код контроллера, в котором вы выполняете разбивку на страницы?

2. В зависимости от выбранного значения в select_tag вы хотите правильно настроить записи на странице? затем вы можете перейти params[:count] к per_page такой опции :per_page => params[:count]

3. Большое вам спасибо! это должно быть правильно

4. Или вы можете изменить @page на @page = params[:count]

Ответ №1:

Вы можете использовать params[:count] вот так, чтобы получить количество записей на страницу на основе value selected в select_tag

 def index
  @page = params[:count] #here
  @users = User.order(:username).joins(:biography).where("is_active? = true AND last_sign_in_at > DATE_SUB(NOW(), INTERVAL 6 MONTH) ").paginate(:page => params[:page], :per_page => @page)
end