Forms.py
class CustomUserCreationForm(UserCreationForm):
#phone_number = forms.CharField(max_length = 100)
class Meta:
model = CustomUser
fields = ('username', 'email','first_name','last_name', 'phone_number', 'middle_name')
Admin.py
class CustomUserAdmin(UserAdmin):
model = CustomUser
add_form = CustomUserCreationForm
form = CustomUserChangeForm
fieldsets = (
(('User'), {'fields': ('username', 'email', 'phone_number', 'first_name', 'last_name', 'middle_name',
'is_staff', 'is_superuser', 'is_active', 'is_parent', 'is_teacher')}),
)
Models.py (All the fields in Admin.py are declared here without errors)
class CustomUser(AbstractUser):
phone_number = models.CharField(max_length = 100, blank=True, null = True)
first_name = models.CharField(max_length = 100, default = '')
last_name = models.CharField(max_length = 100, default = '')
As you can see, I tried adding a Charfield directly in CustomUserCreationForm and I also tried adding fields but it just would not appear whenever I add new user.
This should work for you
class CustomUserAdmin(UserAdmin):
model = CustomUser
add_form = CustomUserCreationForm
form = CustomUserChangeForm
fieldsets = (
(('None'), {'fields': ('username', 'email', 'phone_number', 'first_name', 'last_name', 'middle_name',
'is_staff', 'is_superuser', 'is_active', 'is_parent', 'is_teacher')}),
)
add_fieldsets = (
(None, {
'classes': ('wide',),
'fields': ('username', 'email', 'phone_number', 'first_name', 'last_name', 'middle_name',
'is_staff', 'is_superuser', 'is_active', 'is_parent', 'is_teacher' ),
}),
)
admin.site.register(CustomUser, CustomUserAdmin),