Kekuatan Eloquent tampak saat tabel saling berhubungan. Section ini membahas semua tipe relationship beserta definisi, cara query melewatinya, operasi attach dan sync di pivot table, hingga mencegah masalah N+1 query.
Pahami relasi database dan bagaimana Eloquent memodelkannya sebagai method pada model.
Buka → # One to OneDefinisikan hasOne dan belongsTo untuk relasi satu-ke-satu seperti User dan Phone.
Buka → # One to ManyDefinisikan hasMany untuk relasi satu-ke-banyak seperti Post dan Comment.
Buka → # Many to ManyDefinisikan belongsToMany lewat tabel perantara seperti Role dan Permission.
Buka → # Polymorphic RelationshipsSatu model berelasi ke banyak tipe model dengan morphMany, misalnya Comment pada Post dan Video.
Buka → # Inverse RelationshipsTelusuri relasi dua arah dengan belongsTo dan morphTo sebagai jalan kembali.
Buka → # Eager LoadingMuat relasi di awal dengan with() untuk menghemat query dan mempercepat halaman.
Buka → # Lazy LoadingPahami lazy loading default Eloquent, kapan memakainya, dan cara melarangnya di development.
Buka → # Relationship QueriesQuery relasi langsung lewat relasi dinamis dan whereHas dengan kondisi relasi.
Buka → # Pivot TableKelola tabel perantara: kolom tambahan, withPivot, dan pivot class kustom.
Buka → # Relationship OperationsSimpan data lewat relasi dengan save, create, attach, detach, sync, dan associate.
Buka → # Mencegah N+1 QueryDeteksi pola N+1 dengan query log dan Model::preventLazyLoading lalu perbaiki dengan eager loading.
Buka →