Rails - Relación HABTM - ¿Cómo puedo encontrar un registro basado en un atributo del modelo asociado?
He configurado esta relación HABTM en el pasado y funcionó antes ... Ahora no es así y estoy en mi ingenio tratando de descubrir qué está mal. He estado mirando las guías de los rieles todo el día y parece que no puedo entender lo que estoy haciendo mal, por lo que la ayuda sería muy apreciada.
Tengo 2 modelos conectados a través de un modelo de combinación y estoy tratando de encontrar registros basados en un atributo del modelo asociado.
Event.rb
has_and_belongs_to_many :interests
Interés.rb
has_and_belongs_to_many :events
y una migración de tabla de unión que se creó como
create_table 'events_interests', :id => false do |t|
t.column :event_id, :integer
t.column :interest_id, :integer
end
Lo intenté
@events = Event.all(:include => :interest, :conditions => [" interest.id = ?", 4 ] )
Pero recibí el error "No se encontró la asociación llamada 'interés'; ¿quizás lo escribiste mal?" ... lo cual no hice, por supuesto
Lo intenté
@events = Event.interests.find(:all, :conditions => [" interest.id = ?", 4 ] )
pero obtuvo el error "método indefinido 'intereses' para #Class: 0x4383348"
¿Cómo puedo encontrar los eventos que tienen una identificación de interés de 4 ... Definitivamente me estoy quedando calvo de este lol