Laravel значительно упрощает взаимодействие с базой данных с помощью Eloquent. При работе с красноречивыми отношениями при вызове динамических переменных (с помощью магических методов PHP) вы должны знать, что экземпляры моделей не отражают новые изменения, а постоянно сохраняются при первом вызове.
В следующем примере он ведет себя так, как ожидалось:
6d32588c32f080ef1896633f261e1e14
$ model-> col всегда возвращает старое значение даже после изменения (поскольку значение изначально было получено один раз с помощью Model :: find (42), а затем сохранено). Если вы теперь обратитесь к другой подключенной таблице с помощью $ model-> independent_table , вы можете ожидать, что ее второй вызов вернет новое значение:
6d32588c32f080ef1896633f261e1e14
Это тоже не так ( $ зависимая_таблица = $ модель-> зависимая_таблица кэширует всю зависимую таблицу). Чтобы получить текущее значение, вызывается явно определенная функция Deendant_table ().:
6d32588c32f080ef1896633f261e1e14