Rumah >rangka kerja php >Laravel >Terokai penggunaan persatuan Laravel
Laravel ialah rangka kerja PHP yang digunakan secara meluas dan salah satu rangka kerja paling popular digunakan untuk pembangunan aplikasi web. Ia memerlukan beberapa pengetahuan asas seperti korelasi. Persatuan membantu mendapatkan data yang diperlukan dalam pangkalan data. Artikel ini akan meneroka penggunaan persatuan Laravel.
1. Pengenalan
Dalam Laravel, model ialah cara utama akses data. Hubungan antara model boleh menjadi satu-ke-satu, satu-ke-banyak, banyak-ke-banyak, dsb. Persatuan ialah satu cara untuk mendapatkan data yang disimpan dalam model. Berikut ialah jenis perkaitan yang disediakan oleh Laravel:
2. Satu-dengan-satu persatuan
1 Wujudkan persatuan
Gunakan fungsi hasOne() dan belongsTo() untuk mewujudkan satu-kepada. -satu persatuan. Sebagai contoh, dalam sistem blog, halaman utama setiap pengguna mempunyai halaman profil Kita boleh menggunakan model pengguna dan model profil untuk mencapai perkaitan satu dengan satu.
Model pengguna:
use Illuminate\Database\Eloquent\Model; class User extends Model { public function profile(){ return $this->hasOne('App\Profile'); } }
Model profil:
use Illuminate\Database\Eloquent\Model; class Profile extends Model { public function user(){ return $this->belongsTo('App\User'); } }
2. Menggunakan perkaitan
Anda boleh menggunakan kaedah berikut untuk mengakses data yang berkaitan :
//获取用户的个人资料 $user = User::find(1); $profile = $user->profile; //获取个人资料所属的用户 $profile = Profile::find(1); $user = $profile->user;
3. Persatuan satu-ke-banyak
1 Wujudkan persatuan
Gunakan fungsi hasMany() dan belongsTo() untuk mewujudkan satu-kepada. -banyak persatuan. Sebagai contoh, dalam sistem blog, setiap pengguna boleh menerbitkan berbilang artikel, dan kami boleh menggunakan model pengguna dan model artikel untuk mencapai perkaitan satu-ke-banyak.
Model pengguna:
use Illuminate\Database\Eloquent\Model; class User extends Model { public function posts(){ return $this->hasMany('App\Post'); } }
Model siaran:
use Illuminate\Database\Eloquent\Model; class Post extends Model { public function user(){ return $this->belongsTo('App\User'); } }
2. Menggunakan perkaitan
Anda boleh menggunakan kaedah berikut untuk mengakses yang berkaitan data:
//获取用户发表的所有文章 $user = User::find(1); $posts = $user->posts; //获取某篇文章所属的用户 $post = Post::find(1); $user = $post->user;
4. Persatuan Many-to-Many
1 Menubuhkan persatuan
Gunakan fungsi belongsToMany() untuk menubuhkan persatuan many-to-many . Contohnya, dalam sistem blog, setiap artikel boleh mempunyai berbilang teg, dan teg yang sama juga boleh digunakan oleh berbilang artikel Kita boleh menggunakan model artikel dan model teg untuk melaksanakan perhubungan banyak-ke-banyak.
Model siaran:
use Illuminate\Database\Eloquent\Model; class Post extends Model { public function tags(){ return $this->belongsToMany('App\Tag'); } }
Model teg:
use Illuminate\Database\Eloquent\Model; class Tag extends Model { public function posts(){ return $this->belongsToMany('App\Post'); } }
2. Menggunakan perkaitan
Anda boleh menggunakan kaedah berikut untuk mengakses data yang berkaitan :
//获取某篇文章使用的所有标签 $post = Post::find(1); $tags = $post->tags; //获取某个标签下的所有文章 $tag = Tag::find(1); $posts = $tag->posts;
5. Ringkasan
Persatuan ialah fungsi yang sangat berguna dalam Laravel, yang boleh membantu kami mendapatkan data yang diperlukan daripada pangkalan data dengan cepat. Artikel ini memperkenalkan tiga jenis perhubungan yang biasa: perhubungan satu dengan satu, perhubungan satu dengan ramai dan perhubungan ramai dengan ramai. Saya harap ia akan membantu pembangun yang menggunakan Laravel.
Atas ialah kandungan terperinci Terokai penggunaan persatuan Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!