Rails管理员 - 在“导出”部分中自定义关联的差异值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rails管理员 - 在“导出”部分中自定义关联的差异值相关的知识,希望对你有一定的参考价值。

我有两个型号。 JobPosition和LineManager。直线经理可以有不同的工作岗位,工作岗位有直线经理。在rails admin中,我想导出表示行管理器属性的不同列,包括:name,department等!

config.model 'JobPosition' do
  export do
    field :line_manager, :string do
      export_value do
        value.name if value #value is an instance of Teacher
      end
    end
    field :line_manager, :string do
      export_value do
        value.title if value #value is an instance of Teacher
      end
    end
    field :line_manager, :string do
      export_value do
        value.department if value #value is an instance of Teacher
      end
    end
    field :line_manager, :string do
      export_value do
        value.description if value #value is an instance of Teacher
      end
    end
    field :line_manager, :string do
      export_value do
        value.job_level if value #value is an instance of Teacher
      end
    end
  end
end

但它只适用于第一个而不是其他的。我还想更改列标题。我试图添加这样的标签:

field :line_manager, :string do
      export_value do
        lable "line manager name"
        value.name if value #value is an instance of Teacher
      end
end

但我认为这是不正确的。你有什么主意吗 ?

答案

尝试使用formatted_value

config.model 'JobPosition' do
    configure :line_manager, :string do
      formatted_value do
        value.job_level if value #value is an instance of Teacher
      end
    end
end

以上是关于Rails管理员 - 在“导出”部分中自定义关联的差异值的主要内容,如果未能解决你的问题,请参考以下文章

在 Rails 中自定义设计视图

如何在 Amazon S3 中自定义 Rails 5.2 ActiveStorage 附件的路径?

ruby Rails中自定义rake任务

在 Crystal Report Viewer 中自定义导出选项

如何在材料表中自定义默认导出选项

无法在 Sqoop 导出中自定义的映射器数量