Untuk menyederhanakan sintaks, pikirkan return $this->hasMany('App\Comment', 'foreign_key', 'local_key'); parameter sebagai:
- Model yang ingin Anda tautkan
- Kolom tabel asing (tabel yang Anda tautkan) yang menautkan kembali ke
idkolom tabel saat ini (kecuali jika Anda menentukan parameter ketiga, dalam hal ini ia akan menggunakannya) - Kolom dari tabel saat ini yang harus digunakan - yaitu jika Anda tidak ingin kunci asing dari tabel lain ditautkan ke
idkolom tabel saat ini
Dalam keadaan Anda, karena Anda telah menggunakan store_id di libraries meja, Anda telah membuat hidup Anda mudah. Di bawah ini akan berfungsi dengan baik ketika didefinisikan di Store Anda model:
public function libraries()
{
return $this->hasMany('App\Library');
}
Di balik layar, Laravel akan secara otomatis menautkan id kolom Store tabel ke store_id kolom Library tabel.
Jika Anda ingin mendefinisikannya secara eksplisit, Anda akan melakukannya seperti ini:
public function libraries(){
return $this->hasMany('App\Library', 'store_id','id');
}
- Sebuah standar model adalah bahwa fungsi dengan nama tunggal mengembalikan milik, sedangkan fungsi jamak mengembalikan hasMany (mis.
$store->libraries() or $library->store()).