Laravel facilita mucho la comunicación con la base de datos con Eloquent. Cuando trabaje con Eloquent Relationships, al llamar a variables dinámicas (usando los métodos mágicos de PHP), debe tener en cuenta que las instancias de los modelos no reflejan nuevos cambios, sino que los almacenan en caché de forma permanente la primera vez que se llaman.
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