Postingan lainnya
Pengertian hasOne, hasMany dan belongsTo pada laravel?
Permisi, Kakak, mohon penjelasan tentang judul diatas, Kak? Saya masih kurang pahm tentang fungsi diatas tersebut. :)
7 Jawaban:
ngikut dong tanya gnian kadang aja dipakai ya
Sebenarnya sudah sangat jelas dijelaskan melalui dokumentasinya. note : *primary, **foreign key
1. One to One Jika, table User struktur {user_id*, user_name} table Phone struktur {phone_id*, user_id**} Nah, bentuk Eloquent modelnya :
class User extends Model{
...
//nyambungin ke model Phone
function phone(){
return $this->hasOne('App\Phone');
}
...
}
class Phone extends Model{
...
//nyambungin balik ke user
function user(){
return $this->belongsTo('App\User');
}
...
}
Artinya 1 User punya 1 Phone. Nah, pemakaian hasOne penjabaran lengkapnya :
$this->hasOne('App\Phone','foreign_key','local_id');
Kalo saya tulis hasOne('App\Phone') aja artinya nama foreign key penyambungannya adalah : namaModelYangAdaHasOne_id karena saya naro hasOnenya itu di model User berarti foreignya key penyambungnya == user_id.
Kalo foreig_key i table phone bukan user_id, misalkan phone_user_id bisa tambahin : $this->hasOne('App\One','phone_user_id');
2. One to Many Jika, table User struktur {user_id*, user_name} table Comment struktur {comment_id*, comment_user_id**} Disini saya pakai foreign key yang namanya beda dg nama parent.
Artinya 1 User punya banyak Comment. Pemakaian hasMany penjabarannya kayak begini :
$this->hasMany('App\Comment','foreign_key','local_id');
Berarti :
class User extends Model{
...
function comment(){
return $this->hasMany('App\Comment','comment_user_id');
}
...
}
class Comment extends Model{
...
function comment(){
return $this->belongsTo('App\User','comment_user_id');
}
...
}
Selebihnya gak jauh beda sama hasOne.
Maksud : hasOne / hasMany -> digunain di table parent (foreign key user_id) belongsTo -> digunain ditable penyambung (yang punya foreign key)
Kalo ada yang salah2 mohon di koreksi para suhu >,<
Terimakasih banyak atas penjelasannya, Kak @beckbella :)
kalo foreign_key itu fungsinya buat apa, Kak?
Foreign key itu istilah dari kunci tamu. Semacam field yang nyambungin antara dua table atau lebih. Kalo mau lebih jelasnya klik aja link ini https://www.w3schools.com/sql/sql_foreignkey.asp
<div>menurut saya has to many itu bedanya harus bayak dan satu ke banyak one to manya cmiwwww</div>
terimakasih sebelumnya temen temen sangad membantu, izin menjabarkan singkatnya :
tabel penampung relasi contoh id memiliki HasMany dan tabel penerima relasi memilik user_id dengan BelongsTo artinya user memiliki komen misal, pertanyaan saya satuan hasOne apakah dengan belongsTo penerima relasi hasOne dengan user_id dan penampung relasi belongsTo yaitu id apakah begitu , dan mana a? hhe gatau waku