Tengo un escenario con 2 tablas relacionadas y quiero imprimir en pantalla en una lista información de ambas tablas.
opción1.
@data = User.where(id: [array_users_ids]).includes(:products)
opción2.
@data = User.where(id: [array_users_ids]).joins(:products).select('users.*, products.name as product_name')
Ahora lo que ocurre con la opción1 es que genera en la consola una consulta sql por cada usuario con sus productos.
en cambio la opción2 se traduce en un solo sql ejecutado.
He leido que la forma correcta de hacerlo sería con la opción1 pero para mi no tiene sentido si la opción2 genera una sola consulta sql y me trae la información correcta.
Aucun commentaire:
Enregistrer un commentaire