No sé si hay una buena respuesta para esto. Digamos que tengo:Rieles: obtener relación en una matriz de objetos
users = User.where(:location => "Utopia") #=> Returns [user1,user2,user3,user4]
me gustaría hacer algo como:
users.photos #=> Returns all photos this group of users has
y simplemente obtener todas las fotos de vuelta sin iterar sobre ellos. Lo pregunto porque cada iteración es una llamada a DB. ¿Hay alguna buena forma de hacer una sola llamada a DB?
Sí, sería un poco más eficiente hacer una unión interna en lugar de un LOJ - 'photos = Photo.joins (: user) .where (: users => {: location => 'Utopia'})' – mnelson
¿Es posible especificar qué tecla quiero usar al realizar la unión? La relación se configura a través de ': has_many: through' y la devolución utiliza el conjunto de claves incorrecto. – Justin