Precarga, carga ansiosa, incluye y une en Ruby on Rails

Tomemos un ejemplo para entender la diferencia entre ellos.

Una empresa tiene muchos empleados y existe una conexión de uno a muchos entre la empresa y los empleados.

Precarga:

La precarga carga los datos en dos consultas.

Incluye también carga datos asociados en dos consultas en el caso predeterminado.

No podemos usar la precarga para agregar condiciones para la tabla asociada. Como en nuestro caso, no podemos agregar consultas de dónde para los empleados. Genera un error al agregar dónde y ordenar con la tabla asociada.

ansioso_cargar:

La carga ansiosa carga todos los datos asociados en una sola consulta. Eagrload utiliza combinación externa izquierda para combinar datos. Podemos usar la consulta Where también con carga ansiosa para filtrar los datos de la tabla asociada.

Uniones:

Se une carga datos en una sola consulta. Utiliza unión interna para traer datos.

Las uniones son buenas si filtramos los datos de la tabla asociada, pero si queremos recuperar datos de la tabla relacional, carga una consulta separada para cada columna de datos.

Incluye una solución para evitar consultas múltiples. Carga los datos de la tabla asociada sin múltiples consultas.

Incluye como precarga:

Ruby on Rails

Incluye como ansioso_cargar:

 Ruby on Rails

Eager_load carga todas las columnas en una sola consulta, pero Incluye carga los datos según sea necesario. Funciona como precarga en el caso predeterminado y funciona como wanted_load en caso de una consulta adicional en la tabla asociada.

RielesCarma aporta más de 10 años de experiencia en soluciones de vanguardia en la creación Aplicaciones de Ruby on Rails y mejorar sus aplicaciones Rails ya existentes. Con un equipo de expertos equipado con un amplio conocimiento del marco RoR, RailsCarma le ayuda a traducir las necesidades de su negocio en un desarrollo más rápido y rentable de aplicaciones personalizadas. Al infundir prácticas ágiles en nuestra Desarrollo RoR, llevamos la codificación sin errores al siguiente nivel con nuestro ejemplar mantenimiento y soporte posterior a la implementación. Haznos saber sobre las necesidades de su negocio para que le ayudemos a alcanzar sus objetivos de desarrollo de Rails con un retorno de la inversión positivo.

Artículos Relacionados

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

es_ESSpanish