Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyertai Tiga Jadual dalam Laravel Menggunakan Eloquent?
Menyertai Tiga Jadual dengan Laravel Eloquent
Pengenalan
Apabila bekerja dengan pangkalan data hubungan, menyertai jadual selalunya diperlukan untuk mendapatkan semula data merentas berbilang jadual. Artikel ini menunjukkan cara untuk menyertai tiga jadual dalam Laravel menggunakan Eloquent ORM, menawarkan alternatif kepada gabungan SQL asli.
Skema Pangkalan Data
Pertimbangkan skema pangkalan data berikut:
Menyoal dengan Fasih
Tetapan Perhubungan
Pertama, wujudkan hubungan antara model:
// Article.php class Article extends Eloquent { public function user() { return $this->belongsTo('App\Models\User'); } public function category() { return $this->belongsTo('App\Models\Category'); } } // Category.php class Category extends Eloquent { public function articles() { return $this->hasMany('App\Models\Article'); } } // User.php class User extends Eloquent { public function articles() { return $this->hasMany('App\Models\Article'); } }
Sertai Pertanyaan
Untuk menyertai tiga jadual dan mendapatkan semula artikel dengan kategori dan butiran penggunanya, gunakan kaedah with():
$articles = \App\Models\Article::with(['user', 'category'])->get();
Mengakses Data Berkaitan
Setelah keputusan diambil, anda boleh mengakses data berkaitan sebagai sifat:
foreach ($articles as $article) { echo $article->title . ' - '; echo $article->user->user_name . ' - '; echo $article->category->category_name; }
Kesimpulan
Menggunakan Fasih untuk menyertai jadual memudahkan dan mempercepatkan pengambilan data dalam Laravel. Dengan mewujudkan perhubungan antara model, anda boleh mengakses dan memanipulasi data berkaitan dengan mudah.
Atas ialah kandungan terperinci Bagaimana untuk Menyertai Tiga Jadual dalam Laravel Menggunakan Eloquent?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!