Sebuah model pengguna khusus menggantikan User default Django untuk memenuhi kebutuhan aplikasi Anda — menambahkan field, mengubah identifikasi login (misalnya email daripada username), atau menyesuaikan perilaku. Saran penting yang sering diulang: atur model pengguna khusus di awal proyek, bahkan jika Anda tidak memerlukan perubahan sekarang, karena mengubahnya nanti sangat menyakitkan.
Mengapa ini penting
The default User has fixed fields (username, email, first/last name) and uses
USERNAME as the login field. Real apps often need:
✓ Email-based login (no username)
✓ Extra fields (phone, avatar, role, preferences) on the user itself
✓ Custom authentication behavior
