en mi aplicacion tengo una relacion muchos a muchos asi:
el modelo categoria
Código HTML:
class Categoria < ActiveRecord::Base
has_many :categoriaespecificacion
has_many :especificaciones, :through => :categoriaespecificacion
validates :nombre, :presence => { :message => " no puede estar en blanco"}, :uniqueness => { :message => " ya existe"}
validates :especificacion_ids, :presence => { :message => " no puede estar en blanco"}
end
Código HTML:
class Especificacion < ActiveRecord::Base
has_many :categoriaespecificacion
has_many :categorias, :through => :categoriaespecificacion
def to_s
"#{ @nombre }"
end
end
Código HTML:
class Categoriaespecificacion < ActiveRecord::Base belongs_to :categoria belongs_to :especificacion attr_accessible :categoria_id, :especificacion_id , :visible end
Código HTML:
<%= form_for(@categoria) do |f| %> <% if @categoria.errors.any? %> <div id="error_explanation"> <div class="alert alert_red"> <img height="24" width="24" src="/images/icons/small/white/alert_2.png"> se han encontrado <%= pluralize(@categoria.errors.count, "error") %> en esta categoria </div> <ul> <% @categoria.errors.full_messages.each do |msg| %> <li><%= msg %></li> <% end %> </ul> </div> <% end %> <div class="field"> <%= f.label :nombre %> <%= f.text_field :nombre %> </div> <div class="box grid_8 round_all"> <h2 class="box_head grad_colour round_top">Clasificaciones</h2> <a href="#" class="toggle"> </a> <div class="toggle_container"> <div class="block"> <table border='1' width="50%"> <%= for especificacion in Especificacion.all do %> <tr> <td><%= especificacion.nombre %></td> <td> Marcar Especificacion <%= check_box_tag "categoria[especificacion_ids][]", especificacion.id, @categoria.especificaciones.include?(especificacion) %> </td> <td> Marcar Nombre <%= select_tag("visible[]",options_for_select([["si",1],["no",0]])) %> </td> </tr> <% end %> </table> </div> </div> </div> <div class="field"> <%= f.label :descripcion %> <%= f.text_area :descripcion %> </div> <div class="actions"> <%= f.submit %> </div> <% end %>
actualmente al guardar una categoria; esta me guarda las especificaciones que he seleccionado asi entoncse me guarda el nombre y la descripcion en la tabla categoria y tambien me guarda el id de la categoria (categoria_id) y los id de las especificaciones(especificacion_id) el problema esta que no se como enviar el valor de el campo visible para poderlo guardar ya que en la tabla me queda guardado asi:
categoria_id especificacion_id visible
1 1 NULL
1 2 NULL
1 3 NULL
gracias por sus respuestas