Relasi One to Many Elequent ORM pada Laravel

Relasi One to Many Elequent ORM pada Laravel – Sebelumnya kita sudah membahas mengenai relasi One to One Elequent ORM pada Laravel, kali ini admin ingin memberikan tutorial cara menampilkan data relasi One to Many Elequent ORM pada Laravel.

Dengan menggunakan Relasi Tabel pada Laravel dengan menggunakan Elequent sangat membantu kita untuk menampilkan data yang saling berhubungan.

Penggunaan Relasi One to Many sangat lah mudah, kita tidak perlu melakukan query join seperti query MySQL pada umumnya, yang perlu ktia lakukan hanya membuat method di model laravel dan memanggil fungsi pada model Laravel

Contoh Impementasi Relasi One to Many yaitu seorang mahasiswa mempunyai banyak posisi jabatan. Jadi setiap mahasiswa(satu) boleh memiliki banyak posisi jabatan. Berikut ini skema tabel databasenya.

Relasi One to Many Elequent ORM pada Laravel
Relasi One to Many Elequent ORM pada Laravel

Kita akan menggunakan database di tutorial sebelumnya. Bisa anda dapat di sini : Database MySQL.

Pada database di atas tedapat 2 tabel yaitu mahasiswas dan positons, dimana FOREIGN KEY / kunci tamu terletak pada tabel positions dengan tipe data interger.

Yuk kita bahas cara menggunakan relasi one to many pada Laravel

Relasi One to Many Elequent ORM pada Laravel

Untuk membuat relasi one to many pada Laravel dapat dilakukan dengan mudah, silahhkan anda simak seri belajar laravel yang membahas Relasi One To Many.

Membuat Route Laravel

Langkah pertama yang harus di lakukan yaitu silahkan buat routing baru dengan kode berikut.

Web/Routes.php

Routing di atas digunakan untuk memanggil method dengan nama position pada controller Universitas.

Membuat Controller Laravel

Pada seri sebelumnya kita sudah mempunyai file controller dengan nama Universitas.php. Kemudian tambahkan fungsi dengan nama position menggunakan kode di bawah ini.

Controller di atas berfungsi untuk memanggil relasi model dan menampilkan di halaman views. Karena kita belum mempunyai model , kita bikin dulu model dengan nama model Position.php.

Membuat Model Laravel

Berhubung kita tidak akan menampilkan one to many saja melainkan kita juga akan menampilkan dengan cara many to one maka kita membutuhkan model Position.

Setelah itu ganti kodenya dengan kode di bawah ini

App\Position.php

Kemudian di model Mahasiswa kita perlu menambahkan fungsi untuk menghubungkannya.

App\Mahasiswa.php

Model kita sudah buat dan berikan pengkodean cara relasi one to many dan Many to One.

Membuat View Laravel

Langkah selanjutnya kita akan membuat views baru dengan nama position.blade.php.

Resources/Views/position.blade.php

Berhubung saya menggunakan blade template kita menggunakan satu file dengan nama layout.blade.php. Apabila anda sudah mengikutu tutorial saya sebelumnya tidak perlu membuat lagi.

Resources/Views/layout.blade.php

Pada relasi One to Many kita memanggil variable mahasiswa, setelah itu pada variabel yang di aliaskan dalam hal ini menjadi $mahasiswas kita hubungkan dengan fungsi yang ada di model Mahasiswa yaitu Position.

Lalu kita membuat alias baru, karena data yang direlasikan lebih dari satu maka menggunakan foreach.

Pemanggilan relasi tabel kususnya pada fungsi model di tandai dengan kode.

Untuk Relasi Many to One kita memanggil variabel dengan nama $position, Lalu kita panggil fungsi yang ada di dalam model Position yaitu fungsi mahasiswa.

Jika kedua file blade sudah dibikin silahkan akses dengan akses /positon. Dan Lihat Hasilnya.

Relasi One to Many Elequent ORM pada Laravel
Relasi One to Many Elequent ORM pada Laravel

Maka data yang ada di dalam tabel database akan muncul dengan relasi tabel yang yang ada.

Sekian Relasi One to Many Elequent ORM pada Laravel.

Semoga Bermanfaat.

Baca juga :

Leave a Reply