基于django-countries
文档,
>>> person.country
Country(code='NZ')
>>> person.country.name
u'New Zealand'
应该是一种检索国家/地区名称的unicode的方法。但是,当我尝试它时,我得到了
>>> obj.country
Country(code='AX')
>>> obj.country.name
<django.utils.functional.__proxy__ object at 0x91b81ac>
我签出了countries.py并看到选项如下:
('AX', ugettext_lazy('\xc5land Islands'))
即使使用print object.country.name
也会打印相同的对象。为什么不起作用?
编辑:抱歉,我只是将名称对象作为样本:p
答案 0 :(得分:8)
https://docs.djangoproject.com/en/1.3/ref/unicode/#translated-strings
from django.utils.translation import ugettext_lazy
u = ugettext_lazy('hello')
print u
# out: <django.utils.functional.__proxy__ object at 0x158edd0>
print unicode(u)
# out: u'hello'
如果在模板中呈现,通常不会出现问题。