ruby-on-rails - 事件管理员 : pass instance variable for

我在 ActiveAdmin 中有一个名为统计信息的自定义页面,我想在其中显示包含数据库数据的图表。

现在我使用了 Gon gem并希望通过实例变量将数据传递到我的自定义页面。

通常你会将 gon 行添加到索引操作中

class ProductsController < ApplicationController
  def index
    gon.rabl "app/views/products/index.json.rabl", as: "products"
  end
end

但是我的自定义页面在事件管理中没有 Controller 。我应该怎么做? 还是我必须通过仪表板执行此操作?

最佳答案

在事件管理中有 Controller ,尽管如此你不能将实例变量传递给 arbre 部分。但是你可以为此使用 params 散列:

ActiveAdmin.register_page 'SomePage' do
  menu :label => 'Menu label'

  controller do
    def index
      params[:some_var] = 'value_of_some_var'
    end
  end

  content 'Page title' do
    h2 "This is some_var: #{params[:some_var]}"
  end
end

P.S.:如果你不想改变params,那么所有的实例变量都存储在@arbre_context.assigns中。你也可以这样做:

ActiveAdmin.register_page 'SomePage' do
  menu :label => 'Menu label'

  controller do
    def index
      @some_var = 'value_of_some_var'
    end
  end

  content 'Page title' do
    h2 "This is some_var: #{@arbre_context.assigns[:some_var]}"
  end
end

关于ruby-on-rails - 事件管理员 : pass instance variable for custom page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10917108/

相关文章:

wordpress - 在单个页面上显示 WordPress 博客的所有评论?

django - 重定向到管理员登录

php - 用于匹配标点符号和字母数字字符的正则表达式

django - 从 Django 中的一系列 id 中检索匹配对象的列表

php - 使用 PHP DOM 方法读取 iTunes XML 文件

c# - C#中如何从子构造函数调用父构造函数

jruby - bundler 无法识别平台?找不到 gem

php - 将时间戳转换为 .ics iCal 兼容的日期格式

python - 如何使用 python grep 大文件中两个模式之间的行

performance - Matlab 中 parfor 循环优于 for 循环的具体例子