Django

Code

Changeset 9371

Show
Ignore:
Timestamp:
11/09/08 12:51:28 (2 months ago)
Author:
kmtracey
Message:

Fixed #9514 -- Made admin change_form template correctly recognize/report when a form has only a single error.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/contrib/admin/templates/admin/change_form.html

    r9276 r9371  
    3636{% if errors %} 
    3737    <p class="errornote"> 
    38     {% blocktrans count errors.items|length as counter %}Please correct the error below.{% plural %}Please correct the errors below.{% endblocktrans %} 
     38    {% blocktrans count errors|length as counter %}Please correct the error below.{% plural %}Please correct the errors below.{% endblocktrans %} 
    3939    </p> 
    4040    <ul class="errorlist">{% for error in adminform.form.non_field_errors %}<li>{{ error }}</li>{% endfor %}</ul> 
  • django/trunk/tests/regressiontests/admin_views/tests.py

    r9276 r9371  
    388388        self.assertRedirects(post, '/test_admin/admin/admin_views/article/') 
    389389        self.failUnlessEqual(Article.objects.get(pk=1).content, '<p>edited article</p>') 
     390         
     391        # one error in form should produce singular error message, multiple errors plural 
     392        change_dict['title'] = '' 
     393        post = self.client.post('/test_admin/admin/admin_views/article/1/', change_dict) 
     394        self.failUnlessEqual(request.status_code, 200) 
     395        self.failUnless('Please correct the error below.' in post.content, 
     396                        'Singular error message not found in response to post with one error.') 
     397        change_dict['content'] = '' 
     398        post = self.client.post('/test_admin/admin/admin_views/article/1/', change_dict) 
     399        self.failUnlessEqual(request.status_code, 200) 
     400        self.failUnless('Please correct the errors below.' in post.content, 
     401                        'Plural error message not found in response to post with multiple errors.')         
    390402        self.client.get('/test_admin/admin/logout/') 
    391403