Фильтрация таблицы Ruby ActiveAdmin

Есть страничка с таблицей

ActiveAdmin.register_page "my page" do
  ...
  content do
    ...
    panel "Data" do
      table_for data, sortable: true do
        column("Name", sortable: :name) { |item| item[:name] }
        column("Service", sortable: :service) { |item| item[:service] }
        column("Available", sortable: :amount_left) { |item| item[:amount_left].to_i }
      end
    end
  end
end

Итак, мне нужно отфильтровать ее по первой колонке, есть какие нибудь методы? (Встроенный filter не работает для register_page, или возможно я что-то не понимаю)

У меня появилась идея добавить еще одну отдельную панель для фильтрации, но для этого мне нужно из нее передать параметры в запрос, чтобы отфильтровать на стадии наполнения контейнера, но я не знаю, как это реализовать

Вот наброски

panel "Filter" do
  select(:id, collection: options_for_select(Data.all.collect { |data| [data.name, data.id] }))
  button(link_to "Filter", path_to_page) # Вот тут нужно как-то добавить при нажатии на кнопку Filter необходимые параметры для запроса
end

Как это можно сделать? Либо может есть какой нибудь более красивый способ это реализовать?


Ответы (0 шт):