ruby-on-rails - 增加csv下载记录的限制

标签 ruby-on-rails ruby-on-rails-3 activeadmin

我的数据库中有超过 50K 条记录,但是当我从事件管理员下载 csv 时,它只给了我 10K 条记录。我用谷歌搜索了解决方案,发现

中名为 max_csv_records 的方法存在限制

lib/active_admin/resource_controller/collection.rb

有什么方法可以覆盖这个并增加限制吗?

这是我得到的要点 https://gist.github.com/3177995但是你们能告诉我如何使用这个代码吗?如果我可以在事件管理初始值设定项中添加一些内容,那就更好了

最佳答案

仅供 future 的 Google 用户使用。我的修复(适用于当前的 Master 1.0.0pre)是将以下内容添加到 config/initializers/active_admin.rb:

module ActiveAdmin
  class ResourceController
    module DataAccess
      # needed for current active admin master
      def max_per_page
        30_000
      end

      def per_page
        return 30_000 if %w(text/csv application/xml application/json).include?(request.format)

        return max_per_page if active_admin_config.paginate == false

        @per_page || active_admin_config.per_page
      end
    end
  end
end

根据需要替换最大值。这适用于 csv、xml 和 json 下载。

关于ruby-on-rails - 增加csv下载记录的限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12743442/

相关文章:

ruby-on-rails - RubyMine 和 TextMate 的优缺点

ruby-on-rails - 从应用程序布局调用 Controller 操作

ruby-on-rails-3 - ActiveAdmin:按子协会的属性排序

ruby-on-rails-3 - 覆盖 active_admin form.has_many 中的默认范围

ruby-on-rails - 在 Ubuntu 上创建新的 Rails 项目返回错误

ruby-on-rails - 如何阻止发送到特定电子邮件地址或域的电子邮件?

ruby-on-rails-3 - 带有嵌套资源的 Rails best_in_place gem

ruby-on-rails - 无法使用 rspec stub 辅助方法

ruby-on-rails - 通过 Active Admin 使用 HABTM 或 Has_many

sql - PostgreSQL 选择时间段内的最大值