Blog Archive

Powered by Blogger.

Entri yang Diunggulkan

BGP Interview Questions and Answers [CCNP]

Kategori

Caption

"If you choose to be paid based on your time, you will most likely kill your chances of becoming prosperous." - T Harv Eker

Relasi Table One To Many di Laravel 5.2

Relasi One To Many di Laravel 5.2


Yaak, Pada postingan kali ini admin akan mendokumentasikan apa yang sudah saya tulis yaitu relasi table One To Many di laravel 5.2 . Kenapa dilaravel 5.2 ? males update karena php admin support versi itu. Baik, kita akan bahas apa itu One to Many relation. Sesuai dengan namanya, One to Many relasi merupakan relasi antara kedua table dimana salah satu data pada table 1 dapat memiliki data pada table 2. Bingung ?? Jadi begini.. 
Misalkan saya punya table Genre dan tabel Penyanyi, nahh kalau kita membaca logika 1 penyanyi pasti memiliki satu genre saja kan ? Tetapi 1 Genre bisa dimiliki oleh banyak penyanyi. Masih belom paham ? Okee.. 

Anda tau Rhoma Irama, seorang musisi yang dijuluki raja dangdut. Nah, sudah ketahuan bahwa dia hanya memiliki satu Genre yaitu dangdut. Tetapi, apakah genre dangdut cuma dipakai oleh Rhoma irama ? tidak, ayu ting ting, inul daratista dan penyanyi lain bergenre dangdut. Nah kira-kira begitu lah relasi One to Many yang akan kita bahas.

Bagaimana Cara membuat relasi One To Many ?

PENTING >> Pada sebuah table terdapat field yang memiliki foreign key, sehingga dia membutuhkan induk sehingga bisa foreign key nya terbaca. Artinya kita buat table yang tidak memiliki foreign key nya terlebih dahulu.

Pada kasus ini saya akan mencontohkan 2 table yaitu Table Genre dan Table Singer.

Langkah pertama, kita akan membuat migration tabe Genre terlebih dahulu seperti ini.
Kemudian saya membuat table migration untuk table Singer. 


Ya, dari field table nya saja kita sudah bisa baca bahwa didalam table Singers, terdapat field genres_id yaitu Foreign_key kepada table Genres.

PENTING >> Pembuatan table pada laravel, harus menggunakan huruf S pada ujung kata. Ini karena laravel akan membaca data table secara seluruh. Jika tidak pakai S , maka akan terjadi error pada saat pemanggilan table nya nanti. Jika tak percaya silahkan buktikan sendiri.

Selanjutnya, setelah migrasi sudah diatur dan field sudah siap, maka lakukan perintah php artisan migrate pada cmd. Kemudian kita akan membuat model dari table kita tadi, dengan perintah php artisan make:model namanya. Pada kasus ini saya contohkan akan membuat dua bua model yaitu model Genres dan model Singers.

Selanjutnya buka pada model Genres, lalu tambahkan fungsi singer untuk relasi dengan model singer. Pada model Genres tambahkan fungsi singer lalu ketikkan perintah return $this->hasMany ('App\Singers');



Kemudian pada model Singers, tambahkan fungsi genre untuk melakukan relasi fungsi dengan model Genres. Pada model Singers ini ketikkan perintah return $this->belongsTo( 'App\Genres','genres_id');



Pada model Singers ini kita menggunakan function genre untuk mendeklasikan field genres_id sebagai foreign_key yang mengarah ke model Genres. 

Pada Controller
$singers = Singers::all();
return view ( ' ', compact('singers')); 

Pada View
@foreach ($singers as $singer)
....
@endforeach
 
Untuk menampilkan nilainya cukup mudah, misalkan kita memiliki variable $Singer dan kita akan menampilkan genre dari Singer itu cukup keluarkan seperti ini {{$singer->genre->nama}}. $singer ->genre disana, artinya model singer akan mengeksekusi function genre yang ada pada model singer tadi. Sehingga ketika $singer->genre->nama, akan menampilkan nama dari genre sesuai dengan singernya.


#SyntaxError
Bagikan :
+
Previous
Next Post »
0 Komentar untuk "Relasi Table One To Many di Laravel 5.2"

 
Copyright © 2015 MeTime - All Rights Reserved
Template By Kunci Dunia
Back To Top