Relasi dalam Laravel

0
40
Baraja Coding

One-to-One

Relasi one-to-one adalah relasi sederhana dan paling umum. Contoh kasusnya adalah seorang user memiliki satu profil. Dalam Laravel, kita bisa mendefinisikan relasi ini dalam model User seperti berikut:

PHP

public function profile()
{
    return $this->hasOne('App\Profile');
}

Dan dalam model Profile:

PHP

public function user()
{
    return $this->belongsTo('App\User');
}

One-to-Many

Relasi one-to-many adalah relasi dimana satu model memiliki banyak model lain. Contoh kasusnya adalah seorang user memiliki banyak post. Dalam Laravel, kita bisa mendefinisikan relasi ini dalam model User seperti berikut:

PHP

public function posts()
{
    return $this->hasMany('App\Post');
}

Dan dalam model Post:

PHP

public function user()
{
    return $this->belongsTo('App\User');
}

Many-to-Many

Relasi many-to-many adalah relasi dimana banyak model memiliki banyak model lain. Contoh kasusnya adalah seorang user terdaftar dalam banyak kursus, dan satu kursus memiliki banyak user. Dalam Laravel, kita bisa mendefinisikan relasi ini dalam model User seperti berikut:

PHP

public function courses()
{
    return $this->belongsToMany('App\Course');
}

Dan dalam model Course:

PHP

public function users()
{
    return $this->belongsToMany('App\User');
}