Ошибки формы Django не отображаются - PullRequest
0 голосов
/ 11 августа 2011

У меня есть средство проверки формы, и при сбое сообщение об ошибке не отображается. Есть идеи, что мне не хватает?

views.py:

def setup_onesheet(request):
    # if the form has been submitted
    if request.method == 'POST':
        if 'unverified_username' in request.POST:
            form = OnesheetURL(request.POST)
            if form.is_valid():
                ...

    form = OnesheetURL()
    variables = RequestContext(request, {
        'error_message': error_message,
        'form' : form,
    });
    return render_to_response('onesheet_setup/setup_new_onesheet.html', variables)

forms.py:

class OnesheetURL(forms.Form):
    unverified_username = forms.CharField(label='http://onesheet.com/', max_length=75, validators=[validate_slug])

шаблон:

<form method="post" action="/setup/new/" id="verify-identity" class="full">
    {% csrf_token %}
    <ul>
        <li>
            {{ form.unverified_username.errors }}
            {{ form.unverified_username.label_tag }}
            {{ form.unverified_username }}
            <p>Onesheet URL can only contain letters, numbers, underscores ( _ ) or hyphens ( - ).</p>
        </li>
    </ul>
    <input type="submit">
</form>

1 Ответ

1 голос
/ 11 августа 2011

Попробуйте:

def setup_onesheet(request):
    # if the form has been submitted
    if request.method == 'POST':
        if 'unverified_username' in request.POST:
            form = OnesheetURL(request.POST)
            if form.is_valid():
                ...
    else:
        form = OnesheetURL()

    variables = RequestContext(request, {
        'error_message': error_message,
        'form' : form,
    });
    return render_to_response('onesheet_setup/setup_new_onesheet.html', variables)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...