Django Admin - custom create user form

前端 未结 1 1380
广开言路
广开言路 2020-12-15 05:46

On Django Admin, the default create user form form have 3 fields: username, password and confirm password.

I need to customize the create user form. I want to add th

相关标签:
1条回答
  • 2020-12-15 06:13

    Something like this should work:

    from django.contrib import admin
    from django.contrib.auth.admin import UserAdmin
    from django.contrib.auth.forms import UserCreationForm
    from django.contrib.auth.models import User
    
    class UserCreateForm(UserCreationForm):
    
        class Meta:
            model = User
            fields = ('username', 'first_name' , 'last_name', )
    
    
    class UserAdmin(UserAdmin):
        add_form = UserCreateForm
        prepopulated_fields = {'username': ('first_name' , 'last_name', )}
    
        add_fieldsets = (
            (None, {
                'classes': ('wide',),
                'fields': ('first_name', 'last_name', 'username', 'password1', 'password2', ),
            }),
        )
    
    
    # Re-register UserAdmin
    admin.site.unregister(User)
    admin.site.register(User, UserAdmin)
    
    0 讨论(0)
提交回复
热议问题