Очищают ли данные за кулисами представления на основе классов django, CreateView и UpdateView? - PullRequest
0 голосов
/ 27 августа 2018

Я знаю, что данные проверены. Но я не могу понять, очищает ли CBV данные. При использовании class className(forms.Form): ИЛИ класса className(forms.ModelForm) вы добавляете (внутри вашего CBV):

def post(self, request):
form = HomeForm()
    if form.is_valid():
        text = form.cleaned_data['p]

Может кто-нибудь сказать мне, нужно ли вам также чистить данные вручную, если CreateView и UpdateView очищают данные за кулисами?

1 Ответ

0 голосов
/ 27 августа 2018

Представление CreateView и Update автоматически очищают данные на основе полей модели, например, поля в модели

comments=models.CharField("Comments",max_length=200)

Проверяет, что длина ввода меньше 200, а также что поле не пустое. Если поле модели как показано ниже.

comments=models.CharField("Comments",max_length=200,blank=True,null=True)

Ввод допускается не заполнять. Аналогично поле электронной почты в модели, как показано ниже

email=models.EmailField("Email Address",unique=True)

Запустит проверки, чтобы проверить, является ли Поле электронным письмом с использованием средства проверки электронной почты.

При необходимости представления формы Модель предоставляют реализацию form_valid (), которая автоматически сохраняет модель. Вы можете изменить это, если у вас есть какие-то особые требования; см. примеры ниже.

[https://docs.djangoproject.com/en/2.1/topics/class-based-views/generic-editing/][1]

...