1

私は現在、Heroku (Cedar、4 つの Web dyno、Crane PostgreSQL データベース) で現在運用されている大規模な測量アプリケーションに取り組んでいます。時間の制約により、attr_accessible を介して公開された質問を含む調査モデルがあります。通常、5000 行以上のデータで、約 45 列の日数の結果をエクスポートしようとしています。

thisthisSurvey.where("created_at >= ?", Time.now.beginning_of_day)の組み合わせを使用して、その日の調査 ( ) をエクスポートすると、ダウンロード、ダウンロードを求められますが、開くと、データの約 2/3 しかありません。列の途中で途切れることもあります。

ある種のメモリの問題、またはすべてを Excel/CSV に適切に送信する問題が発生しているようです。データサイズが原因だと確信していますが、それを制御することはできません。問題を見つけようとしているだけです。これを解決する方法についてのアイデアはありますか? かなり衰弱しています。

CSV/Excel の書き込みを処理する調査モデルのコードは次のとおりです。

  def self.to_csv(options = {})
    CSV.generate do |csv|
      csv << column_names
      all.find_each do |survey|
        csv << survey.attributes.values_at(*column_names)
      end
    end
  end

現在コントローラーでは、すべてを index.xls.erb にフォーマットしています。

ご協力いただきありがとうございます。

4

1 に答える 1

0

この問題を解決しました!少し突っついた後、この回答で参照されているように、HTML形式のビュー/xlsファイルの使用から、ビューでフォーマットされたベアボーン CSV を実行するように切り替えました。これは完璧に機能しました。トラブルシューティングのアイデアをありがとう!

于 2012-12-06T16:01:10.507 に答える