Laravel: Робота з красномовними відносинами

Laravel значно полегшує спілкування з базою даних за допомогою Eloquent. Під час роботи з промовистими відносинами , під час виклику динамічних змінних (за допомогою магічних методів PHP), слід пам’ятати, що екземпляри моделей не відображають нових змін, але зберігаються постійно при їх першому викликанні.


У наступному прикладі він поводиться належним чином:

6d32588c32f080ef1896633f261e1e14

$ model-> col завжди повертає старе значення навіть після зміни (оскільки значення спочатку було отримано один раз за допомогою Model :: find (42), а потім збережено). Якщо ви зараз звернетесь до іншої, підключеної таблиці з $ model-> depend__table , ви могли б очікувати, що його другий виклик поверне нове значення:

6d32588c32f080ef1896633f261e1e14

Це також не так ( $ depend_table = $ model-> dependant_table кешує всю залежну таблицю). Щоб отримати поточне значення, викликається явно визначена функція dependant_table ():

6d32588c32f080ef1896633f261e1e14

Назад