Pendahuluan Bayangin lagi ngerjain fitur sederhana, tapi tiba-tiba bos minta pembatasan akses yang beda-beda tiap role. Biasanya kita langsung kepikiran nulis logic if-else di dalam controller, padahal cara itu bikin kode berantakan banget pas project makin gede. Middleware custom di Laravel itu penyelamat buat jaga kebersihan kode, biar controller kamu fokus ke logic bisnis, bukan urusan siapa yang boleh masuk. Tips & Best Practices Di banyak project, biasanya saya mulai dari membuat Middleware yang spesifik per role. Jangan pernah bikin satu middleware raksasa yang ngecek semua kondisi, karena bakal ribet pas nanti nambah role baru. Selalu gunakan form request atau policy kalau logic aksesnya bergantung pada data model, jangan cuma ngandelin middleware buat semuanya. Saya terbiasa naruh logic pengecekan di dalam 'Gate' atau 'Policy' agar middleware cuma jadi pintu masuk yang simpel, bukan tempat nulis aturan bisnis yang kompleks. Contoh Kode Biasanya saya buat mid...
Pendahuluan Bayangin lagi ngerjain fitur CRUD standar, tapi tiba-tiba klien minta data yang udah dihapus pengen bisa dibalikin lagi. Biasanya panik karena udah kadung pakai delete() biasa, akhirnya data musnah tanpa jejak. Untungnya di Laravel, kita punya fitur Soft Deletes yang bikin hidup lebih tenang karena data nggak beneran hilang, cuma 'disembunyiin' dari query. Tips & Best Practices Di banyak project, saya selalu mastiin kolom deleted_at udah ada di migration sebelum nge-run fitur apa pun agar nggak ada error 'Column not found' saat query berjalan. Pas lagi nanganin relasi yang kompleks, saya lebih suka pakai withTrashed() daripada maksa join manual supaya logika relasi tetap bersih dan gampang dibaca sama rekan tim lain. Saat ngerjain fitur restore, saya selalu nambahin pengecekan apakah data beneran ada atau udah permanen hilang supaya user nggak dapet error aneh saat proses pemulihan. Contoh Kode Ini cara saya biasanya pasang di model biar nggak ribet: use...