在这里,我已经在rails 6上使用了主动管理。考虑索引视图有将近5到10列。如果要自定义列,则意味着应该这样做。
index do
column :name
column :description
column :released_year
column :director
column :producer
column :artist
actions
end
好的。没问题。
除非,我的模型有将近50列。我想显示48列。当时我想描述这48列应该显示的内容。我的问题是,我们是否必须从索引视图中删除这两列,而不是编写必要的列。喜欢,
index do
remove_column :created_at
remove_column :updated_at
end
答案 0 :(得分:2)
如果您的模型称为模型,请尝试:
attributes_to_display = Model.new.attributes.keys - ['attribute_1', 'attribute_2']
index do
attributes_to_display.each do |attribute|
column attribute.to_sym
end
actions
end
答案 1 :(得分:0)
resource_columns为您处理关联,所以:
attributes = active_admin_config.resource_columns - [:attribute_1, :attribute_2]
index do
selectable_column
id_column
attributes.each do |attribute|
column attribute
end
actions
end
答案 2 :(得分:0)
这对我有用( exclude_columns = [:attribute_to_exclude_1, :attribute_to_exclude_2]
index do
selectable_column
ModelName.attribute_names.each do |clmn|
column clmn if not exclude_columns.include? clmn.to_sym
end
actions
end
成为您的模特):
${Result}= Remove String Hello How are you ${SPACE}
答案 3 :(得分:0)
上述解决方案对我有用,但它没有显示带有链接的关联对象,而只是显示了关联的对象 ID。就我而言,我只有一个关联对象,所以我是这样处理的
index do
columns_to_exclude = ["url"]
(Feature.column_names - columns_to_exclude).each do |c|
if c != "car_model_id"
column c.to_sym
else
column "car_model".to_sym
end
end
通过这种方式,您的关联对象行为得以保留,您可以从链接转到父对象。