Changeset 6681
- Timestamp:
- 11/17/07 06:11:54 (11 months ago)
- Files:
-
- django/trunk/django/utils/translation/trans_null.py (modified) (2 diffs)
- django/trunk/django/utils/translation/trans_real.py (modified) (2 diffs)
- django/trunk/tests/regressiontests/i18n/tests.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/utils/translation/trans_null.py
r6582 r6681 5 5 from django.conf import settings 6 6 from django.utils.encoding import force_unicode 7 from django.utils.safestring import mark_safe, SafeData 7 8 8 9 def ngettext(singular, plural, number): … … 32 33 33 34 def gettext(message): 34 return TECHNICAL_ID_MAP.get(message, message) 35 result = TECHNICAL_ID_MAP.get(message, message) 36 if isinstance(message, SafeData): 37 return mark_safe(result) 38 return result 35 39 36 40 def ugettext(message): django/trunk/django/utils/translation/trans_real.py
r6608 r6681 9 9 10 10 from django.utils.encoding import force_unicode 11 from django.utils.safestring import mark_safe, SafeData 11 12 12 13 try: … … 272 273 t = _active.get(currentThread(), None) 273 274 if t is not None: 274 return getattr(t, translation_function)(message) 275 if _default is None: 276 from django.conf import settings 277 _default = translation(settings.LANGUAGE_CODE) 278 return getattr(_default, translation_function)(message) 275 result = getattr(t, translation_function)(message) 276 else: 277 if _default is None: 278 from django.conf import settings 279 _default = translation(settings.LANGUAGE_CODE) 280 result = getattr(_default, translation_function)(message) 281 if isinstance(message, SafeData): 282 return mark_safe(result) 283 return result 279 284 280 285 def gettext(message): django/trunk/tests/regressiontests/i18n/tests.py
r6608 r6681 5 5 Format string interpolation should work with *_lazy objects. 6 6 7 >>> from django.utils.translation import ugettext _lazy, activate, deactivate, gettext_lazy7 >>> from django.utils.translation import ugettext, ugettext_lazy, activate, deactivate, gettext_lazy 8 8 >>> s = ugettext_lazy('Add %(name)s') 9 9 >>> d = {'name': 'Ringo'} … … 40 40 >>> unicode(django.utils.translation.string_concat("dja", "ngo")) 41 41 u'django' 42 43 Translating a string requiring no auto-escaping shouldn't change the "safe" 44 status. 45 46 >>> from django.utils.safestring import mark_safe 47 >>> s = mark_safe('Password') 48 >>> type(s) 49 <class 'django.utils.safestring.SafeString'> 50 >>> activate('de') 51 >>> type(ugettext(s)) 52 <class 'django.utils.safestring.SafeUnicode'> 53 >>> deactivate() 42 54 """ 43 55
