Я не могу создать форму с паролем password1 password2 в Django
error:Unknown field(s) (password1, password2) specified for User
Я понятия не имею, почему он не работает, как сказано в документации
Документация:
class UserCreationForm¶
A ModelForm for creating a new user.
It has three fields: username (from the user model), password1, and password2.
It verifies that password1 and password2 match, validates the password using validate_password(),
and sets the user’s password using set_password().
Мой forms.py
class CreateUserForm(UserCreationForm):
class Meta:
model = User
fields = ['username', 'email', 'password1', 'password2']
my views.py
class CreateUserView(CreateView):
model = User
form = CreateUserForm
template_name = 'registration/register.html'
fields = ['username', 'email', 'password1', 'password2 ]
class UserLoginView(LoginView):
next_page = "home.html"
']
urls.py
urlpatterns = [
path('register/', CreateUserView.as_view(), name='register'),
]
password1
и password2
являются не полями User
. Вы должны удалить их:
class CreateUserForm(UserCreationForm):
class Meta(UserCreationForm.Meta):
model = User
fields = ['username', 'email']
но при этом наследовать форму все равно не имеет особого смысла.
Более того, вы указываете класс формы с помощью form_class
[Django-doc], а не form
, так:
class CreateUserView(CreateView):
model = User
form_class = CreateUserForm
template_name = 'registration/register.html'