Ho un codice che funziona bene con ruby 1.87 ma non funziona con Ruby 1.9. Dice che CSV :: Writer non è dichiarato ma fa ancora parte del rdoc. Il csv api è cambiato, dopo l'unione più veloce, oppure no?scrivere csv in ruby 1.9 e CSV :: Writer
il mio codice:
require 'csv'
def self.export_csv
file_name = File.join(RAILS_ROOT, 'public','csv',"#{start_date_f}_#{end_date_f}.csv")
return file_name if File.exist?(file_name)
@results = find(:all)
header_row = []
outfile = File.open(file_name, 'wb')
CSV::Writer.generate(outfile) do |csv|
header_row = ['gateway_id','created', 'gateway_status_id', 'panel_id', 'panel_status','volts_out', 'amps_out', 'temp','aid' ,'sid', 'pisid']
csv << header_row
end
end
L'errore che ricevo: NameError: non inizializzata costante CSV :: Writer
Nota che richiedono 'csv' c'è. lo provo nella mia console, quando faccio il require 'csv', funziona, ma non appena chiamo CSV :: Writer ricevo quell'errore. Questo codice funziona bene con Ruby 1.87, quindi mi fa pensare che si tratti di un problema di rubes 1.9 rubino da quando è stato fuso con fasterCSV.
era l'approccio che ho preso. ho appena controllato la risposta ora, comunque, è una buona fonte di informazioni :-) –