El atributo clean_data solo está disponible después de llamar al método clean (). Si se define una función de limpieza de campo utilizando el método de nombre clean_field en la validación de formulario, django llamará a esta función primero y finalmente llamará a la función clean (), de la siguiente manera:
def clean_mobile (self):
mobile = self.cleaned_data ['mobile'] #Escribe como si esto fuera incorrecto, entonces el atributo clean_data no se genera
Al llamar a la función de limpieza, la esencia es convertir el tipo de formulario al tipo de datos python.Si hay dos campos en el formulario, a saber, móvil y contraseña, el campo de limpieza clean_mobile mobile se define en la clase de formulario (es decir, el campo mobile se completa con el método clean_mobile (). Convierta del tipo de formulario al tipo de datos python), luego la contraseña del campo se limpiará mediante el método incorporado clean (), y se convertirá al tipo python (es decir, solo el campo de contraseña en el atributo clean_data se puede obtener a través de login_form.cleaned_data ['contraseña'] ) El atributo de datos contiene todos los valores de campo del formulario, de la siguiente manera:
Ejemplo correcto:
El código anterior solo le dice al lector que el atributo de datos se puede usar para obtener los datos del formulario. También puede usar el formulario: register_post_form.password.value para obtener datos del formulario en el front-end.
Nota: Los lectores pueden usar el método de punto de interrupción para ver los campos contenidos en el objeto de formulario.