Berbagi Ilmu | Software | Seputar Info

Blog sederhana - semoga bermanfaaT

Full width home advertisement

Post Page Advertisement [Top]

Laravel UUID PostgreSQL Tidak Sempurna

Laravel UUID PostgreSQL Tidak Sempurna

 


Jaman sekarang itu kalau membangung sebuah website atau web apps enaknya pake Framework ya pastinya biar cepet dan framework yang sering dipakai sekarang adalah Laravel. Seperti keseharian saya juga sukanya pake Laravel untung masalah develop aplikasi, lalu untuk Databasenya sekarang saya sudah mulai sering pakai PostgreSQL. Udah lama ga pakai MySQL lagi, karena secara PostgreSQL lebih powerfull dan cocok digunakan untuk mengolah data yang besar.

Lalu pada PostgreSQL-nya sendiri saya menggunakan UUID sebagai unique keynya, bukan cuma ID yang bertipe INT, tapi ID yang bertipe UUID. Karena saya rasa ketika pakai UUID bisa lebih sequre aja karena dia merupakan unique key yang sangat random karena hasil dari generate. Untuk lebih detailnya kapan kapan aja lah ya saya bahas karena diartikel ini lebih membahas sebuah permasalahan yang aslinya sepele, tapi kalo ga ngerti bisa bikin pusing.

Baca juga: Selang Air Cooler Tidak Mengalirkan Air

Buat kalian yang sudah kesehariannya pakai Laravel, lalu pakai DB nya PostgreSQL dan kalian pakai UUID, pernah gak nemuin kasus seperti ini




Kalian ingin menampilkan data dari database kalian, lalu kalian olah datanya seperti code pada gambar diatas

Lalu pada sebuah kondisi kalian hanya ingin memasukkan kolom ID pada array yang kalian buat sehingga membentuk code seperti gambar diatas. FYI code diatas saya ingin mengumpulkan data ID pada variable $data dengan hanya memasukkan $row->id pada array




Tapi malah jadinya seperti gambar diatas, nah loh UUIDnya kok jadi ga karuan? seperti ga lengkap gitu

Padahal kalian inginnya seperti gambar diatas

Baca juga: Cara Menggunakan Air Cooler Yang Baik Dan Benar


Tenang aja, semua itu bisa diperbaiki kok, tapi sebelumnya kenapa bisa seperti itu? Itu dikarenakan pada laravel, Unique ID nya secara default dianggap dengan Tipe Data INT (Integer), padahal ID yang kita punya bertipekan UUID (String). Itulah kenapa keluarnya jadi aneh gitu dan bentuknya angka semua, padahal UUID yang kita simpan adalah gabungan huruf dan angka serta separator. Untuk itu, pada Model yang kalian gunakan untuk mengambil data dari database yang kalian tuju, baiknya menambahkan code seperti ini

Kalian cukup menambahkan $cast dengan value id => string, lalu $primaryKey dengan value sesuai nama kolom ID kalian.

Yap cuma begitu doang kok gasusah susah, dan jangan lupa itu selalu didefinisikan disetiap Model kalian yang menggunakan UUID ya biar ga rusak lagi format UUID nya.

- Reqnews

No comments:

Post a Comment

Bottom Ad [Post Page]