Tengo un formulario con varios campos. Tengo comprobaciones de validación separadas para cada campo, realizadas a través de la validación de formularios. Sin embargo, también necesito verificar si se rellenan algunos campos antes de redirigir al usuario a una vista diferente. Esperaba poder adjuntar de alguna manera el error a forms.non_field_errors ya que no es para un campo en particular, pero no estoy seguro de cuál sería la sintaxis correcta para esto. He comprobado en línea y se encontró ..¿Cómo adjuntar el mensaje de error a form.non_field_errors en django?
form.errors['__all__'] = form.error_class(["error msg"])
Esto muestra el mensaje de error, pero parece echar a perder las otras páginas, así y displyas el mensaje de error si hago clic en cualquier otra cosa.
me trataron
form._errors[NON_FIELD_ERRORS] = form.error_class()
Esto hace que un objeto 'NoneType' no tiene atributo de error 'setdefault' para mí.
He tratado
form.non_field_errors().append("Please complete your profile in order to access the content.")
Esto no parece hacer nada y no puedo ver el mensaje de error en la vista.
¿Cuál sería la mejor manera de hacerlo? Lo ideal es que no quiera hacerlo en el método limpio de la forma. Siento que debería poder adjuntar un error al formulario en la vista.
Sé que puedo hacerlo en el método Form.clean().Sin embargo, preferiría hacerlo en la vista y anexar un error a la lista form.errors, ¿es esto posible? – Angela
Bueno, sí, es posible que mi respuesta lo demuestre :) – jpic
Gracias jpic por su respuesta detallada. Voy a probar este código y volveré. Perdón por la respuesta tardía. He estado de vacaciones. – Angela