Как добавить сообщение об ошибке в form.non_field_errors в django?

У меня есть форма с несколькими полями. У меня есть отдельные проверки для каждого поля, выполняемые с помощью проверки форм. Однако мне также нужно проверить, заполнено ли несколько полей, прежде чем перенаправить пользователя в другое представление. Я надеялся, что смогу каким-то образом добавить ошибку в forms.non_field_errors, поскольку это не для конкретного поля, но я не уверен, какой для этого будет правильный синтаксис. Я проверил в Интернете и обнаружил ...

form.errors['__all__'] = form.error_class(["error msg"])

Это отображает сообщение об ошибке, но, похоже, также портит другие страницы и отображает сообщение об ошибке, если я нажимаю на что-нибудь еще.

Я пробовал

form._errors[NON_FIELD_ERRORS] = form.error_class()

Это приводит к тому, что объект 'NoneType' не имеет для меня ошибки атрибута 'setdefault'.

Я пробовал

form.non_field_errors().append("Please complete your profile in order to access the content.")

Похоже, это ничего не дает, и я не вижу сообщения об ошибке в представлении.

Как лучше всего это сделать? В идеале я не хочу делать это чистым методом формы. Я чувствую, что могу добавить ошибку в форму в представлении.

9
задан jpic 23 March 2012 в 13:04
поделиться