You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为特定Action的Active Admin自定义布局注入头部?

在Active Admin自定义布局中添加默认头部

你可以直接调用Active Admin内置的头部partial来解决这个问题——Active Admin已经把默认的头部组件封装成了可复用的partial,不用自己从头搭建。

步骤1:修改自定义布局文件

打开你的app/views/layouts/custom_active_admin.html.haml,把原来的#header部分替换为渲染Active Admin头部partial的代码,同时别忘了加载Active Admin的默认资源(不然头部样式会错乱):

!!!
%html
  %head
    = csrf_meta_tags
    = csp_meta_tag
    # 先加载Active Admin默认资源,再加载自定义资源,避免样式冲突
    = stylesheet_link_tag 'active_admin', media: 'all'
    = javascript_include_tag 'active_admin'
    = stylesheet_link_tag 'custom_active_admin', media: 'all'
    = javascript_include_tag 'custom_active_admin'
  %body.new.active_admin.logged_in.admin_namespace
    # 直接渲染Active Admin的默认头部
    = render 'active_admin/header'
    .wrapper.without_sidebar#active_admin_content
      .main_content_wrapper
        .alert-message-container
          = yield

步骤2:(可选)保留自定义head内容

如果你原来的yield :head有自定义内容需要保留,可以把它嵌入到头部区域,比如:

#header
  = yield :head
  = render 'active_admin/header'

不过通常Active Admin的header已经包含了页面标题、导航栏、用户菜单这些核心元素,直接渲染它就能还原和其他页面一致的顶部样式。

验证效果

现在重新访问编辑页面,你就能看到和标准Active Admin页面一致的顶部头部,同时你的自定义布局逻辑也能正常运行。

内容的提问来源于stack exchange,提问作者liễu nguyễn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 08:43:24