【发布时间】:2012-06-10 16:54:54
【问题描述】:
我想将 Gon (https://github.com/gazay/gon) 添加到我的 activeadmin
但我需要添加一行
<%= include_gon %>
到布局中的头部
但我不知道怎么做?
【问题讨论】:
标签: ruby-on-rails layout activeadmin
我想将 Gon (https://github.com/gazay/gon) 添加到我的 activeadmin
但我需要添加一行
<%= include_gon %>
到布局中的头部
但我不知道怎么做?
【问题讨论】:
标签: ruby-on-rails layout activeadmin
添加到 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
【讨论】:
register_javascript 选项已被弃用,取而代之的是要求 active_admin.js 中的 JS 文件
这也可能是相关的:
# 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
【讨论】:
register_javascript 配置将在 V2 中弃用。
因此,您可以更改 `assets/javascripts/active_admin.js,而不是更改 config/initializers/active_admin.rb,只需将您的 .js 的名称文件放在类似
//= require active_admin/base
//= require activeadmin_addons/all
//= require masks
此文件位于 assets 文件夹内,如 mask.js
【讨论】:
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
【讨论】:
现在有
active_admin_namespace.head
非常方便。不要忘记 html_safe 连接字符串。
【讨论】: