Ruby on Rails rails_admin添加自定义模型部分,无需创建表

7gyucuyw  于 11个月前  发布在  Ruby
关注(0)|答案(1)|浏览(117)

我需要添加到我的铁路管理面板中的模型列表与数据库交互的自定义部分没有相关的表。像一个“假”模型,我们可以说。已经尝试创建一个假模型,但不能使其工作。
gem 'rails_admin','~> 2.1.0'
rails_admin.rb

require Rails.root.join('app/models', 'remediation.rb')

config.included_models = ['Remediation']

config.model Remediation do
    visible true

end

字符串
app/models/remediation.rb
已经尝试了所有注解的配置和模型的可能组合。

class Remediation < ApplicationRecord 

  # or ActiveRecord::Base or include ActiveModel::Model
  # attr_accessor :some_attribute
  # self.table_name = :assessment_high_risk_factor

  rails_admin do
    
  end
end


我们的想法是在这里(例如在"Answers“模型下)添加一个没有名为”Remediation“的表的假模型,并自定义视图列以列出和编辑当前存在的模型:x1c 0d1x

km0tfn4u

km0tfn4u1#

下面是你的代码的一个修改版本,它可能会工作:

# app/models/remediation.rb

class Remediation
  include ActiveModel::Model
  # Define any virtual attributes here if needed
  # attr_accessor :some_attribute

  # Define Rails Admin configuration for this model
  rails_admin do
    navigation_label 'Custom Section'
    label 'Remediation'
    visible do
      # Conditions to show this in the navigation
      true
    end

    list do
      # Define the columns to display in the list view
    end

    edit do
      # Define the fields to display in the form for 'new' and 'edit' actions
    end
  end
end

字符串
在rails_admin.rb初始化器中:

RailsAdmin.config do |config|
  config.included_models = ['Remediation', ...other models...]
end


请记住,由于Remediation不是ActiveRecord模型,因此不会有与数据库相关的操作,如Create、Update或Delete,除非您在rails_admin中手动定义这些操作。

相关问题