Ich versuche Djangos django.contrib.auth.forms.UserCreationForm zu erweitern, um E-Mail- und Namensfelder einzuschließen. Meine ähnliche Erweiterung von UserChangeForm funktioniert gut, aber UserCreationForm zeigt immer noch nur die Standardfelder Benutzername, Kennwort1 und Kennwort2 an. Irgendwelche Ideen, was ich falsch mache?Erweiterungen Djangos UserCreationForm
forms.py
class AuthorCreation(UserCreationForm):
class Meta:
model = User
fields = ('username', 'password1', 'password2',
'first_name', 'last_name', 'email', 'groups', 'is_staff')
class AuthorChange(UserChangeForm):
class Meta:
model = User
fields = ('username', 'first_name', 'last_name',
'email', 'password', 'groups', 'is_staff')
admin.py
class AuthorAdmin(UserAdmin):
"""Admin class for creating and managing Authors"""
inlines = [AuthorInline]
fieldsets = (
(None, {
'fields': ('username', ('first_name', 'last_name'),
'email', 'password', 'groups', 'is_staff')
}),
)
class Media:
css = {
'all': [
'css/codenotes-admin.css',
]
}
def get_form(self, request, obj=None, **kwargs):
if obj is None:
return forms.AuthorCreation
else:
return forms.AuthorChange
admin.site.unregister(User)
admin.site.register(User, AuthorAdmin)
Auch die AuthorChangeForm korrekt angezeigt, alle Felder, aber AuthorCreationForm zeigt nur den Benutzernamen, password1 und password2 Felder (plus die Inline Formen, die bei beiden gut funktionieren).
Ich nehme an, das Problem ist mit den Feldgruppen, aber ich kann es nicht aus der Dokumentation herausfinden.
gleiches Ergebnis. Ich erhalte nur die Felder Benutzername, Passwort1, Passwort2 und Inline. Nein Vorname, Nachname, E-Mail usw. –
Ich aktualisierte meine Antwort, lassen Sie sehen, ob es hilft – Yannick
Immer noch kein Glück, das gleiche Ergebnis. –