У меня была похожая проблема, но я использовал встроенную библиотеку CSV для rails, а не csv_builder (о которой я ничего не знаю).
в моей модели у меня есть метод для генерации CSV и сохранения в виде вложения paerclip на s3:
def csv_export
@entries = self.entries
@filename = "naming my file"
CSV.open("#{Rails.root.to_s}/tmp/#{@filename}", "wb") do |csv| #creates a tempfile csv
csv << ["Date & Time", "Name", "Email"] #creates the header
@entries.each do |e|
csv << [e.created_at, e.name, e.email] #create new line for each item in collection
end
end
self.update_attribute(:csv_report, File.open("#{Rails.root.to_s}/tmp/#{@filename}"))
#saves tempfile as paperclip attachment
end
Я вызываю этот метод в граблях, которые выгружаются на задержанного рабочего.
Итак, в задании на грабли: Object.delay.csv_export