Laravel:雄弁な関係を扱う

Laravelは、Eloquentを使用してデータベースとの通信を非常に簡単にします。 Eloquent Relationshipsを使用する場合、動的変数を呼び出すとき(PHPの魔法のメソッドを使用)、モデルのインスタンスは新しい変更を反映しませんが、最初に呼び出されたときに永続的に保存されることに注意してください。


次の例では、期待どおりに動作します:

6d32588c32f080ef1896633f261e1e14

$ model-> colは、変更後も常に古い値を返します(値は、 Model :: find(42)で最初に一度フェッチされてから保存されたため)。 $ model-> dependent_tableを使用して別の接続されたテーブルをアドレス指定すると、2回目の呼び出しで新しい値が返されることが期待できます。:

6d32588c32f080ef1896633f261e1e14

これも当てはまりません( $ dependent_table = $ model-> dependent_tableは依存テーブル全体をキャッシュします)。 現在の値を取得するために、明示的に定義された関数dependant_table()が呼び出されます:

6d32588c32f080ef1896633f261e1e14

バック