【问题标题】:ActiveAdmin - Choose What Field Shows as Profile Name on Navigation/Menu Bar - RailsActiveAdmin - 选择在导航/菜单栏上显示为配置文件名称的字段 - Rails
【发布时间】:2021-07-14 18:05:13
【问题描述】:

上下文: 我目前正在 Rails 中开发一个 Web 应用程序,并且正在使用 ActiveAdmin 来管理管理功能。登录 Admin 帐户时,您可以设置菜单栏(导航栏)标题、菜单选项卡,还可以添加注销链接。

在菜单栏的右上角,您将看到您的管理员电子邮件(指向个人资料的链接)和一个注销链接。

问题: 我目前在管理模型中添加了一个名为“full_name”的字段,并且电子邮件用于显示在菜单栏中,现在它尝试显示“full_name”。

有没有办法覆盖当前用户的菜单栏中显示的数据字段?

【问题讨论】:

    标签: ruby-on-rails ruby postgresql controller activeadmin


    【解决方案1】:

    ActiveAdmin 依次查找以下方法的存在以显示数据

    :display_name, :full_name, :name, :username, :login, :title, :email, :to_s
    

    在您的情况下,您添加了 full_name 列,full_name 字段的优先级高于 email 字段。

    在您的情况下,您可以将 display_name 添加到 AdminUser 模型以覆盖您要显示的值。

    def display_name
      email
    end
    

    如果你想添加你的自定义方法,那么你可以在 ActiveAdmin 配置文件中设置display_name_methods config

    ActiveAdmin.setup do |config|
      ...
      config.display_name_methods = [:show_custom_name, :display_name, :to_s...]
      ...
    end
    

    【讨论】:

    • 太棒了,这正是我想要的!感谢您的帮助!
    猜你喜欢
    • 2021-11-23
    • 1970-01-01
    • 1970-01-01
    • 2019-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-09
    • 2023-03-20
    相关资源
    最近更新 更多