Rumahweb Journal
Banner - Cara Membuat Relasi Data One To One Di Laravel

Cara Membuat Relasi Data One To One Di Laravel

Pernahkah Anda menemui kasus di mana satu data hanya berhubungan dengan satu data lain? Misalnya, seorang user hanya memiliki satu profile, atau seorang penduduk hanya memiliki satu KTP. Hubungan semacam ini dalam basis data dikenal dengan istilah One to One Relationship.

Laravel sudah menyediakan fitur relasi data yang sangat memudahkan dalam mengelola hubungan antar tabel, termasuk relasi One to One.

Pada panduan kali ini, kita akan membahas langkah-langkah membuat relasi One to One di Laravel, mulai dari membuat migration, model, mendefinisikan relasi, hingga mengisi data dengan seeder dan menampilkannya di view.

Apa Itu Relasi One To One

Relasi One to One adalah jenis relasi di mana satu baris pada tabel A hanya berhubungan dengan satu baris pada tabel B, begitu juga sebaliknya. Relasi ini biasanya digunakan untuk memisahkan data yang sifatnya opsional atau lebih spesifik, sehingga struktur tabel utama tetap rapi dan tidak terlalu kompleks.

Keuntungan menggunakan relasi one to one adalah ketika terjadi perubahan struktur data, Anda hanya perlu menambah atau mengubah kolom pada tabel terkait, tanpa harus mengutak-atik tabel utama.

Contohnya, jika ingin menambahkan kolom social_media pada informasi profil pengguna, cukup tambahkan kolom tersebut di tabel user_profiles, sementara tabel users tetap sederhana dengan data utamanya seperti nama, email, dan password.

Pindah Hosting ke Rumahweb Gratis

Membuat Relasi Data One To One Di Laravel

Selanjutnya, kita akan mempelajari cara membuat relasi data one to one di Laravel. Sebelum mulai, pastikan Anda sudah menginstal Laravel dan aplikasinya dapat berjalan dengan baik di localhost atau server Anda.

Step 1. Membuat Migration data

Langkah pertama adalah menyiapkan dua tabel, yaitu tabel users dan tabel profiles. Pada tabel users, kita hanya akan menyimpan data dasar seperti name dan email. Sedangkan tabel profiles akan berisi kolom user_id (sebagai relasi ke kolom id pada tabel users), serta kolom tambahan seperti address dan phone.

Untuk migration tabel users, kita bisa menggunakan migration bawaan Laravel, namun dengan sedikit penyesuaian pada isinya seperti berikut:

Migration user - Membuat Relasi Data One To One Di Laravel

Berikutnya kita membuat migration untuk profile caranya dengan menjalankan perintah:

php artisan make:migration create_profiles_table

Kemudian kita isikan data yang akan digunakan seperti berikut :

Migration Profile

Setelah membuat migration datanya dapat dijalankan perintah php artisan migrate untuk mengirimkan table yang sudah kita buat ke database.

Step 2. Membuat Model

Fungsi model pada Laravel digunakan sebagai jembatan antara aplikasi yang dibuat dengan database, berfungsi untuk mengelola, memproses, dan berinteraksi dengan data. Untuk model user sebelumnya sudah ada saat proses instalasi, dan kini hanya cukup membuat model profile dengan perintah:

php artisan make:model Profile

Definisi Relasi pada Model

Model Profile :

Model Profile

Model User :

Model User

Step 3. Membuat seeder

Selanjutnya, kita akan membuat seeder data user dan profile yang akan dikirimkan ke databse pada table user dan profile dengan cara membuat seedernya dahulu dengan menginputkan perintah php artisan make:seeder UserSeeder dengan isi berikut untuk membuat 5 data dummy:

UserSeeder

Serta kemudian pada databaseseeder yang sudah ada silahkan di ubah menjadi berikut untk memanggil dari seeder user

DatabaseSeeder

Setelah memasukan semua codenya kemudian kita menjalankan php artisan db:seed untuk mengirimkan data dummy ke database.

Step 4. Membuat Controller

Untuk dapat membuat controller, Anda dapat untuk menjalankan perintah berikut :

php artisan make:controller UserController

Langkah selanjutnya, kita akan membuat function view untuk menampilkan relasi data antara data user dan profile yang akan kita buat. Berikut adalah contohnya:

Controller user

Step 5. Membuat tampilan view

Pada step ini, kita akan membuat tampilan view relasi data user dan profile yang akan menampilkan data relasi pada folder resources/view/index.blade.php. Berikut contoh skrip yang bisa digunakan:

Script view

Step 6. Menambahkan Route Untuk Menampilkan Relasi Data User dan Profile

Di dalam file routes/web.php, tambahkan route untuk menampilkan relasi data user dan profile yang sudah dibuat.

Route view

Pengujian

Langkah terakhir sesi belajar Laravel untuk Membuat Relasi Data One To One Di Laravel adalah melakukan pengujian. Silahkan dapat menjalankan php artisan serve untuk menjalankan websitenya.

Pengujian

Penutup

Dengan memahami dan menerapkan relasi one to one di Laravel, Anda bisa mengelola data yang saling berhubungan dengan lebih rapi, efisien, dan terstruktur. Relasi ini membuat proses pengambilan maupun penyimpanan data menjadi lebih mudah, sekaligus menjaga tabel utama tetap sederhana.

Dengan pemahaman relasi database yang baik, pengembangan fitur baru akan terasa lebih fleksibel dan kebutuhan data pada website dapat dikelola dengan lebih optimal.

Demikian artikel kami tentang cara membuat relasi data one to one di Laravel. Semoga tutorial ini membantu Anda dalam membangun aplikasi Laravel yang lebih kompleks secara lebih sistematis.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 0 / 5. Vote count: 0

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Arief Hidayatullah

Arief Hidayatullah adalah seorang Technical Support di Rumahweb Indonesia yang memiliki minat dan keahlian dalam pengembangan web. Dengan pengalaman dan pengetahuannya di bidang teknologi, Arief memiliki ketertarikan khusus dalam pengembangan web menggunakan Laravel, sebuah framework PHP yang populer. Dengan semangat belajar dan eksplorasi teknologi, Arief terus mengembangkan keterampilannya untuk menciptakan solusi web yang efisien dan inovatif.

banner pop up - Pindah Hosting ke Rumahweb