首页 > 解决方案 > 如何在 ActiveAdmin 的仪表板中使用参数?

问题描述

我在 ActiveAdmin 的仪表板中显示了很多图表和汇总数据,但我想让它对用户更灵活,所以经过大量工作后,我在仪表板中使用用户可以选择的部分制作了一个表单日期范围和其他选项。这些参数应该用于过滤 ActiveAdmin 仪表板中显示的数据...

问题是我发现我无法访问params. ActiveAdmin register_page我得到的确切错误如下:undefined local variable or method 'params' for #<ActiveAdmin::PageDSL:0x005585abf414c0>

那么,有没有办法解决这个问题?我唯一能想到的就是执行另一个控制器/操作,将用户在表单中提交的数据直接保存到数据库中,然后将用户重定向到 ActiveAdmin 的仪表板。最后我会使用保存在数据库中的数据来过滤我应该在仪表板中显示的内容,但我认为使用数据库传递参数不是一个好习惯......有什么想法吗?我能做些什么?

标签: ruby-on-railsparametersruby-on-rails-5activeadmin

解决方案


这确实显示了参数:

ActiveAdmin.register_page "Dashboard" do
  menu priority: 1, label: proc{ I18n.t("active_admin.dashboard") }
  content title: proc{ I18n.t("active_admin.dashboard") } do
    columns do
      column do
        panel 'Params' do
          params.inspect
        end
      end
    end
 end

推荐阅读