Me explico. Tengo una tabla de artÃculos y otra de colores,
evidentemente la relación es n a m, por lo tanto he creado otra tabla
que se llama relaciones donde guardo id, articulo_id, color_id y en el
modelo utilizo has_and_belongs_to_many. La teoria my bien, pero en la
práctica, cuando quiero crear el _form.rhtml, pongo un select de todos
los artÃculos, y mi idea era poner al lado del select una lista con
todos los colores disponibles y un checkbox al lado, de manera que con
el select seleccionas el articulo, y vas marcando el checkbox de los
colores que le quieres asociar. El código que tengo en el _form es este
Article
<%= select 'relation', 'article_id', Article.find_all.collect {|a| [
a.name, a.id ] } %>
<%= check_box (:relation, :colour_id,{}, colour.id, "0") %> <%= colour.name%>
<%end%>La pregunta del millón es: ¿cómo guarda esto? Creo que hay algo mal en
el form, ya que todos los checkxbox tienen el mismo nombre, mi intención
es que el nombre del checkbox sea el id del color, y luego en el
controlador hacer un for para cada color y guardar la relación.
Espero haberme explicado.
¿Alguien lo ha echo antes o tiene alguna idea?