hola lista tengo una relacion has_and belongs to many entre empresas y mercados en la tabla empresas_mercados tengo empresas_id y mercados_id donde mercados_id se repite es decir 35 -- 1 36 -- 1 40 -- 2 5 -- 2 estoy haciendo esto @mercados << empre.mercados esto me crea un vector que despues yo recorro y quito los indices repetidos, pero no hay una forma mas optima en el has_and_belongs_to_many para quitar los repetidos es que si el vector se me hace muy grande es un fastidio ya que tarda mas. gracias
on 13.08.2008 20:20
on 14.08.2008 13:49
El 13 de agosto de 2008 20:20, Maite Piedra < ruby-forum-incoming@andreas-s.net> escribió: > hola lista > tengo una relacion has_and belongs to many entre empresas y mercados en > la tabla empresas_mercados tengo empresas_id y mercados_id > hola Maite, una observación, supongo que estarás empleando el singular en la tabla intermedia. Esto es, debe ser una tabla "empresas_mercados" con campos "empresa_id" y "mercado_id". > > esto me crea un vector que despues yo recorro y quito los indices > repetidos, pero no hay una forma mas optima en el > has_and_belongs_to_many para quitar los repetidos > No entiendo el problema... si tienes la tabla intermedia como te he dicho antes, y en los modelos: empresa has_and_belongs_to_many :mercados y mercado has_and_belongs_to_many :empresas Ya deberías poder hacer @empresa.mercados para coger todos los mercados de una empresa, @mercado.empresas para coger todas las empresas de un determinado mercado... Quizá lo que quieres es coger todos los mercados en global? Pues Mercado.find(:all), no? > > es que si el vector se me hace muy grande es un fastidio ya que tarda > mas. > Lo dicho, que no te sigo :)