調査結果をcsvファイルに保存しようとしているので、調査が完了するたびにファイルに新しい行が追加されます。データベースの行をcsvにエクスポートしてダウンロードできるようにするコードがありますが、最初にアンケートの保存を組み込む方法がわかりません。それが可能かどうかもわかりません。正しいヘッダーでcsvファイルを設定しています。
質問する
430 次
2 に答える
1
関数が呼び出されると(フォームの送信先のコントローラーのアクション、create
RESTコントローラーで作成)、そこにカスタムロジックを追加して、データをフォームから必要なcsv構造に変換できます。
Ruby にはCSVモジュールが組み込まれており、CSV ファイルの読み取りと書き込みの両方に使用できます。
したがって、次のようなものが必要です
require "csv"
CSV.open "output.csv", "a+" do |csv|
# example logic from another script how to populate the file
times.each do |key, value|
csv << [ key, value ]
end
end
行の構造を必要に応じて定義するだけで済みます。この例では、行ごとに 2 つの列がスローされます。
編集: a+ は、ファイルを切り捨てる元の w+ ではなく、ファイルを最後 (新しい行) から書き込むようにします。
于 2012-12-10T14:03:34.780 に答える
0
考えられる解決策は、ロガーを使用することです。アプリケーションコントローラーの場合:
def surveys
@@surveys_log ||= Logger.new("#{Rails.root}/log/surveys.log")
end
調査を記録したい場所:
surveys.info @survey.to_csv # you'll need to implement "to_csv" yourself
これにより、surveys.log
フォルダがになりlog/
ます。
于 2012-12-10T13:53:52.703 に答える