Hola a todos, soy nuevo en el tema de rails, pero tengo una duda, tengo
una relacion muchos a muchos de productos con categorias y estoy usando
un f.collection_select tengo el siguiente codigo para ingresar un nuevo
producto y seleccionar una categoria
<% categorias = Categoria.find(:all, :order => :id) %>
<%= f.label :categoria %> <%= f.collection_select :id, categorias, :id, :descripcion, {:prompt => "Por favor elegir"} %>
luego quiero almacenar la informacion en la tabla de relaciones con el
siguiente codigo
class Producto < ActiveRecord::Base
has_many :categorizacions
has_many :categorias, :through => :categorizacions
after_save :guardar_cat
protected
def guardar_cat
#agrego un rol por defecto
categorizacion = Categorizacion.new
categorizacion.producto_id= :producto
categorizacion.categoria_id= :id
categorizacion.save
categorizacions<<categorizacion
end
end
pero en la tabla categorizacions no me guarda el id de categoria, el
cual supuestamente selecciono en el collection_select, imagino que tengo
varios errores, si alguien tiene una idea de como puedo hacer esto se lo
agradecere mucho.