Estoy usando best_in_place gema para hacer algunas modificaciones en línea en una aplicación de Rails.Edición en línea con la gema de Rails 'best_in_place' - error: se pierden nuevas líneas después de la edición en textarea
Una de las propiedades de mi objeto es de tipo text
, y yo quiero que sea editado en un área de texto, por lo que hizo esto:
<%= best_in_place @myobject, :description, :type => :textarea %>
Funciona, pero cuando no se está editando, todo las devoluciones (\ n) se eliminan.
He intentado utilizar simple_format, añadiendo :display_with => :simple_format
a las opciones introducidas a best_in_place:
<%= best_in_place @myobject, :description, :type => :textarea, :display_with => :simple_format %>
Cuando no se está editando, las nuevas líneas se muestran como se esperaba. Pero el clic para entrar en la edición está roto, y un nuevo guión se agrega arriba. Al hacer clic en él, aparece un cuadro de texto, pero está vacío y el texto ingresado allí no se guarda en mi objeto.
El contenido guardado en mi propiedad es simplemente texto, no contiene ningún html.
Esta cuestión (y el parche) parecía relacionado con mi problema: https://github.com/bernat/best_in_place/pull/111
Sin embargo, al aplicar el parche (de forma manual, en el fichero de .../gems/best_in_place-1.0.6/spec/spec_helper.rb
), todavía tengo el mismo problema.
encontré que .html_safe estaba lanzando un error cuando el contenido (v) fue nula por lo que las pruebas correspondientes ': display_with => lambda {| v | v.nil? ? '': textilize (v) .html_safe} ' –