Django Meta class Поля и связь с базой данных - PullRequest
1 голос
/ 14 октября 2019

Я новичок в Django, и у меня возникают трудности с пониманием мета-класса, который написан внутри другого класса. Я надеюсь, что кто-то может помочь мне понять его более четко

 class UserRegistrationForm(UserCreationForm):
        email=forms.EmailField()

        class Meta:
            model=User
            fields=['username','email','password1','password2']

Что такое мета-поля иКак Meta класс связан с базой данных? Почему этот Мета класс используется здесь?

1 Ответ

0 голосов
/ 14 октября 2019

Вы пытаетесь создать форму, в которой новые пользователи будут вводить имя пользователя, адрес электронной почты и пароль для создания своего пользователя. Что тебе нужно сделать? Вы должны сказать, как вы должны вести себя в форме. Например, вы должны определить, как будет обрабатываться форма, если пользователь вводит неверный адрес электронной почты или вводит два неравных пароля в поле паролей. Что еще более важно, вы должны определить, какие поля вы хотите. Что ж, простой способ сделать все это - использовать характеристики уже доступной модели, то есть модели User. В мета-классе вы указываете форме, из какой модели он должен изучить свое поведение, и какие поля модели он должен включить в себя. Обратите внимание, что вы можете переопределить некоторые части поведения, как вы сделали в email=forms.EmailField()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...