from django.contrib import admin from django.contrib.auth.admin import UserAdmin from .models import User @admin.register(User) class CustomUserAdmin(UserAdmin): list_display = ('username', 'email', 'wallet_balance', 'is_staff', 'is_active', 'date_joined') list_filter = ('is_staff', 'is_active', 'date_joined') search_fields = ('username', 'email') ordering = ('-date_joined',) fieldsets = UserAdmin.fieldsets + ( ('Wallet Information', {'fields': ('wallet_balance',)}), ) readonly_fields = ('date_joined', 'last_login') def get_readonly_fields(self, request, obj=None): if obj: # editing an existing object return self.readonly_fields + ('username',) return self.readonly_fields