Laravel:处理雄辩的关系

Laravel 通过 Eloquent 使与数据库的通信变得更加容易。使用Eloquent 关系时,调用动态变量(使用 PHP 的魔术方法)时,您应该注意模型的实例不会反映新的更改,而是在第一次调用时永久缓存它们。


在下面的示例中,它的行为符合预期:

6d32588c32f080ef1896633f261e1e14

$ model-> col即使更改后也总是返回旧值(因为该值最初是通过Model :: find(42)获取一次,然后保存)。 如果现在使用$ model-> dependent_table寻址另一个已连接的表,则可以期望它的第二次调用将返回新值:

6d32588c32f080ef1896633f261e1e14

也不是这种情况( $ dependent_table = $ model-> Dependant_table缓存整个从属表)。 要获取当前值,将调用显式定义的函数dependant_table():

6d32588c32f080ef1896633f261e1e14

背部