Django

Code

Changeset 6453

Show
Ignore:
Timestamp:
10/03/07 20:55:51 (9 months ago)
Author:
mtredinnick
Message:

Fixed #5641 -- Handle lazy translations correctly when used as default arguments. Thanks, permon.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/db/models/fields/__init__.py

    r6378 r6453  
    239239            if callable(self.default): 
    240240                return self.default() 
    241             return self.default 
     241            return force_unicode(self.default, strings_only=True) 
    242242        if not self.empty_strings_allowed or (self.null and settings.DATABASE_ENGINE != 'oracle'): 
    243243            return None 
  • django/trunk/tests/modeltests/basic/models.py

    r6346 r6453  
    153153>>> a6.save() 
    154154>>> a6.headline 
    155 'Default headline' 
     155u'Default headline' 
    156156 
    157157# For DateTimeFields, Django saves as much precision (in seconds) as you 
  • django/trunk/tests/modeltests/field_defaults/models.py

    r5876 r6453  
    4343# Access database columns via Python attributes. 
    4444>>> a.headline 
    45 'Default headline' 
     45u'Default headline' 
    4646 
    4747# make sure the two dates are sufficiently close 
  • django/trunk/tests/regressiontests/i18n/models.py

    r5876 r6453  
     1from django.db import models 
     2from django.utils.translation import ugettext_lazy as _ 
     3 
     4class TestModel(models.Model): 
     5    text = models.CharField(max_length=10, default=_('Anything')) 
     6 
     7__test__ = {'API_TESTS': ''' 
     8>>> tm = TestModel() 
     9>>> tm.save() 
     10''' 
     11} 
     12