Rails overwrite CSV

controller, csv, export, ruby-on-rails

Solution

You should use `'w'` mode. BTW, why do you write `"#{params[:first_name]}"` where `params[:first_name]` would be enough? The code should look:

CSV.open 'application.csv', 'w' do |csv|
  csv << [params[:first_name], params[:last_name], params[:company], params[:email], params[:phone], params[:business], params[:services], params[:employees], params[:turnover], params[:c4l_services]]
end

Problem

I'm currently using this code: ``` CSV.open "application.csv", "a+" do |csv| csv << [ "#{params[:first_name]}", "#{params[:last_name]}","#{params[:company]}","#{params[:email]}", "#{params[:phone]}", "#{params[:business]}", "#{params[:services]}", "#{params[:employees]}", "#{params[:turnover]}" ] end ``` Which writes an extra row to the csv each time, what can I put instead of `"a+"` that will overwrite the entire file each time, so it always only has one row?

Original source