首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何按id对ActiveAdmin CSV表进行排序?

在ActiveAdmin中,可以使用"index"方法对CSV表按ID进行排序。

首先,在相应的资源管理器类中打开index方法,然后使用csv方法定义CSV的输出。在csv方法中,可以使用column方法定义要在CSV中显示的列,并使用sortable方法指定按照哪一列排序。对于按ID排序,可以使用:id作为参数。最后,使用order_by方法将结果按照指定的排序参数进行排序。

以下是一个示例代码:

代码语言:txt
复制
ActiveAdmin.register YourModel do
  controller do
    def index
      super do |format|
        format.csv do
          csv_options = { col_sep: ',' }
          headers['Content-Disposition'] = "attachment; filename=\"your_models.csv\""
          headers['Content-Type'] ||= 'text/csv'
          
          # 定义CSV列和排序
          csv_data = CSV.generate(csv_options) do |csv|
            csv << ['ID', '名称', '其他列']
            collection.order('id ASC').each do |item|
              csv << [item.id, item.name, item.other_column]
            end
          end

          # 输出CSV数据
          self.response_body = csv_data
        end
      end
    end
  end
end

这样,在ActiveAdmin的资源管理器中,导出的CSV表将按照ID进行排序。

请注意,以上代码示例中的YourModel需要替换为你的模型名称,名称其他列需要根据实际情况进行调整。同时,你也可以根据需要修改文件名和列的顺序。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2分32秒

073.go切片的sort包

领券