Rails的覆盖CSV

问题描述:

我目前使用此代码:Rails的覆盖CSV

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 

每个时间写了一个额外的行到CSV,怎么可以把0​​将覆盖每次整个文件代替,因此它总是只有一行?

您应该使用'w'模式。顺便说一句,你为什么写"#{params[:first_name]}"哪里params[:first_name]就够了?该代码应该看起来如下:

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