活动管理员:包括Javascript

时间:2012-06-06 16:23:28

标签: ruby-on-rails layout activeadmin

我想将Gon(https://github.com/gazay/gon)添加到我的activeadmin

但我需要添加一行

<%= include_gon %>

到布局的头部

但我无法弄清楚怎么办?

5 个答案:

答案 0 :(得分:27)

添加Mexxer的评论。转到`config / initializers / active_admin.rb

在页面底部,您会找到以下内容:

# == Register Stylesheets & Javascripts
#
# We recommend using the built in Active Admin layout and loading
# up your own stylesheets / javascripts to customize the look
# and feel.
#
# To load a stylesheet:
#   config.register_stylesheet 'my_stylesheet.css'
#
# To load a javascript file:
#   config.register_javascript 'my_javascript.js'

取消注释最后一行并将my_javascript.js替换为您的文件,例如......

# To load a javascript file:
config.register_javascript 'invoices.js'

该文件位于app/assets/javascripts/invoices.js

答案 1 :(得分:6)

这也可能是相关的:

# The Active Admin equivalent of putting this in your application layout:
# <head>
#   <%= cloudinary_js_config %>
# </head>

module ActiveAdmin
  module Views
    module Pages
      class Base < Arbre::HTML::Document

        alias_method :original_build_head, :build_active_admin_head

        def build_active_admin_head
          original_build_head

          within @head do
            text_node include_gon
          end
        end

      end
    end
  end
end

来源:https://gist.github.com/seanlinsley/9786622

答案 2 :(得分:0)

Rails.application.config.after_initialize do
  javascripts = [] 
  javascripts << "//maps.googleapis.com/maps/api/js?sensor=false&key="
  javascripts += ActiveAdmin.application.javascripts.to_a
  ActiveAdmin.application.javascripts.replace javascripts
end

https://github.com/activeadmin/activeadmin/issues/340#issuecomment-92512556

答案 3 :(得分:0)

register_javascript配置将在V2中弃用。

因此,您可以更改`assets / javascripts / active_admin.js而不是更改config/initializers/active_admin.rb,只需将.js的名称文件放入

//= require active_admin/base
//= require activeadmin_addons/all
//= require masks

该文件位于资产文件夹内,如masks.js

答案 4 :(得分:0)

现在有

active_admin_namespace.head

非常方便。不要忘记 html_safe 串联的​​字符串。