Разбор сообщения об ошибке в шаблоне Django? - PullRequest
1 голос
/ 14 сентября 2010

Я новичок в Джанго.Я пишу пример приложения с формой, отправляю эту форму и сохраняю данные в базе данных.Моя форма должна быть проверена, прежде чем разрешить сохранять данные.Поэтому мой вопрос заключается в том, как я могу передать сообщения об ошибках (сгенерированные при проверке) в представление?Любые предложения приветствуются.Спасибо!

1 Ответ

3 голосов
/ 14 сентября 2010

Вы используете Form экземпляр?Затем вы можете визуализировать форму в шаблоне и автоматически отобразить сообщения об ошибках.Например:

# views.py
def my_view(request, *args, **kwargs):
    if request.method == 'POST':
        form = MyForm(request.POST.copy())
        if form.is_valid():
            # Save to db etc.
    elif request.methof == 'GET':
        form = MyForm()

    return render_to_response(..., {'form' : form})

И в шаблоне:

{{ form.as_p }}

Вы заметите, что если форма не является допустимой (is_valid() возвращает False), то представление будет продолженовернуть форму (с ошибками) в шаблон.Ошибки отображаются в шаблоне при вызове form.as_p.

** Обновление **

Как @ Даниэль сказал:

Даже если вы не используете form.as_p, вы можетеполучить ошибки для всей формы с помощью form.errors и для каждого поля с form.fieldname.errors.

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