В Django я пытаюсь получить (подкласс) новую форму из ModelForm
формы, где я хотел бы удалить некоторые поля (или иметь только некоторые поля, чтобы быть более корректным). Конечно очевидным способом было бы сделать (базовая форма от django.contrib.auth.forms
):
class MyUserChangeForm(UserChangeForm):
class Meta(UserChangeForm.Meta):
fields = ('first_name', 'last_name', 'email')
Но это не работает, так как добавляет / сохраняет также поле username
в результирующей форме. Это поле было объявлено явно в UserChangeForm
. Даже добавление атрибута username
к exclude
не помогает.
Есть ли какой-то правильный способ исключить это, и я что-то упускаю? Это ошибка? Есть ли обходной путь?