Laravel: Trabajar con relaciones elocuentes

Laravel facilita mucho la comunicación con la base de datos con Eloquent. Cuando trabaje con Eloquent Relationships , debe tener en cuenta al llamar a variables dinámicas (con la ayuda de los métodos mágicos de PHP) que las instancias de los modelos no reflejan nuevos cambios, sino que se almacenan permanentemente cuando se llaman por primera vez.


En el siguiente ejemplo se comporta como se esperaba:

6d32588c32f080ef1896633f261e1e14

$ model-> col siempre devuelve el valor anterior incluso después del cambio (porque el valor se obtuvo inicialmente una vez con Model :: find (42) y luego se guardó). Si ahora se dirige a otra tabla conectada con $ modelo-> tabla_dependiente , puede esperar que su segunda llamada devuelva el nuevo valor:

6d32588c32f080ef1896633f261e1e14

Este tampoco es el caso ( $ dependiente_tabla = $ modelo-> dependiente_tabla almacena en caché toda la tabla dependiente). Para obtener un valor actual, se llama a la función dependdant_table () definida explícitamente:

6d32588c32f080ef1896633f261e1e14

Atrás