Cómo anexar datos a un archivo csv

Quiero anexar datos al archivo csv. Obtengo esos datos del usuario usando el formulario html. Mi código actual agrega datos al archivo csv pero no se adjunta. Entonces, cuando el usuario ingresa el botón de registro de detalles, borra los datos agregados previamente e inserte el nuevo en ese lugar. Entonces, ¿cómo puedo agregar nuevos datos para que se guarden en la siguiente fila y mantengan el rest de los datos en su lugar?

Esto es lo que estoy haciendo.

full_name = params["full_name"] email = params["email"] phone = params["phone"] organization = params["organization"] job = params["job"] diet = params["diet"] address = params["address"] code = params["code"] city = params["city"] cost_pool = params["cost_pool"] CSV.open("participants_info.csv", "wb") do |csv| csv << [full_name, email, phone, organization, job, diet, address, code, city, cost_pool] end 

“ a ” Solo escritura, comienza al final del archivo si el archivo existe, de lo contrario crea un nuevo archivo para escribir.

`a + ” Lectura-escritura, comienza al final del archivo si el archivo existe, de lo contrario crea un nuevo archivo para leer y escribir

use CSV.open("participants_info.csv", "a+")

Abrir archivo en modo agregado (ab)

 CSV.open("participants_info.csv", "ab") do |csv| #... end 
 File.open('filename', 'a'){ |outfile| CSV::Writer.generate(outfile) do |csv| csv << ['c1', nil, '', '"', "\r\n", 'c2'] end } 

Para adjuntar archivo use el siguiente código:

CSV.open("participants_info.csv", "ab") do |csv|