Construir params para múltiples objetos

Hola de nuevo. Mi pregunta de hoy es la siguiente:

Ya he visto que la forma de generar campos de formulario aplica nombres
de
la forma “objeto[propiedad]”

...

Mi problema es que lo que quiero generar son varios objetos a la vez en
un
mismo formulario donde cada linea sería un objeto, por ejemplo

...

Mi pregunta es ¿incorpora Rails algún tratamiento para este caso? Se
supone
(supongo yo) que params te daría los arrays de textos y temas por
separado,
cuando lo que interesa sería refundirlos para poder crear los objetos
correspondientes (nota[texto][0] con nota[tema][0], etc.)

Yo por mi parte tengo una solución provisional que sería generar los
campos
así

...

decidme si me equivoco, pero creo que no hay una forma automática (con
un
helper) de generar esto. Habria que especificar a mano los nombres de
los
campos:

<%=text_field_tag(‘nota[#{i}][texto]’, ‘’)
%><%=text_field_tag(‘nota[#{i}][tema]’, ‘’) %>

Creo que entendeis lo que quiero decir. ¿Qué opinais, muchachos?

Si, por ahí iba exactamente mi idea, aunque a mi me salía un hash y a lo
mejor era lgo más complicado hacer eso.

Fantástico.

si le pones [] al nombre de tu parametro, rails se encarga de
construir un arreglo.

Asi que si llama a tus input:

<%= text_field_tag “nota[][texto]” %><%= text_field_tag “nota[]
[tema]” %>
<%= text_field_tag “nota[][texto]” %><%= text_field_tag “nota[]
[tema]” %>
<%= text_field_tag “nota[][texto]” %><%= text_field_tag “nota[]
[tema]” %>

Despues puedes procesar los parametros como

params[:nota][0][:texto], params[:nota][1][:texto] …

o cosas como notas = params[:nota].collect {|p| Nota.new§ }