Laravel: Arbejde med veltalende forhold

Laravel gør kommunikationen med databasen meget lettere med Eloquent. Når du arbejder med Eloquent Relationships , når du kalder på dynamiske variabler (ved hjælp af de magiske metoder til PHP), skal du være opmærksom på, at forekomsterne af modellerne ikke afspejler nye ændringer, men gemmes permanent, når de først kaldes.


I det følgende eksempel opfører det sig som forventet:

6d32588c32f080ef1896633f261e1e14

$ model-> col returnerer altid den gamle værdi, selv efter ændringen (fordi værdien oprindeligt blev hentet en gang med Model :: find (42) og derefter gemt). Hvis du nu adresserer en anden, tilsluttet tabel med $ model-> afhængig_tabel , kunne du forvente, at dens andet opkald ville returnere den nye værdi:

6d32588c32f080ef1896633f261e1e14

Dette er heller ikke tilfældet ( $ afhængig_tabel = $ model-> afhængig_tabel cachelagrer hele den afhængige tabel). For at få en aktuel værdi kaldes den eksplicit definerede funktion afhængig_tabel ():

6d32588c32f080ef1896633f261e1e14

Tilbage