Rails 自定义管理 gem

Rails customizing the administrate gem

我有位置、音乐会和艺术家模型作为

class Location < ApplicationRecord
  has_many :concerts, dependent: :destroy
  has_many :artists, through: :concerts
end

class Concert < ApplicationRecord
  belongs_to :location
  belongs_to :artist
end

class Location < ApplicationRecord
  has_many :concerts, dependent: :destroy
  has_many :artists, through: :concerts
end

我目前正在使用 rails 管理,现在我想自定义 rails 管理 gem,而不是在添加我想要的新音乐会时显示 ID那里的位置和艺术家姓名而不是那里的 id。我附上了屏幕截图。

在您的位置和艺术家仪表板中,您需要定义一个 display_resource 方法:

class LocationDashboard < Administrate::BaseDashboard
  def display_resource(location)
    location.name # or whatever attribute you want to use
  end

  # ...
end

在您的艺术家面板中执行相同的操作,您就可以开始了:)

有关如何自定义仪表板的更多详细信息,请查看this