PythonTip >> 博文 >> python django i18n

Django项目的国际化(i18n)

zihua 2013-09-28 23:09:38 点击: 899 | 收藏


    最近在搞django项目的国际化,综合了多家的帖子,才算搞成功,所以,若有人发觉什么地方在别的地方也出现了,不要惊讶。
    创建一个i18ntest的项目,底下又建了个ajax的app。和许多文章说的一样,settings.py的设置一定要更改
引用

USE_I18N = True #本来就有,确保为True
'django.middleware.locale.LocaleMiddleware',#注意与别的中间件的顺序


我本来在ajax底下建了locale目录,然后用django-admin.py makemessage -l zh_CN,产生.po文件,用poedit编辑,保存,得到.mo文件。启动服务,结果语言包就是应用不了,跟了一下,发现用的是django自带的语言包,而没用我编辑的。想想可能是路径有问题。

就把locale目录拷贝到i18ntest底下,一运行,呵呵,搞定。

期间还有别的错误,例如_()这个函数不识别,解决方法是安装三个包
引用

gettext-tools-0.17.zip
gettext-runtime-0.17.zip
libiconv-1.9.1.bin.woe32.zip

把他们解压缩到同一个目录下,并加入环境变量,再在views.py里加入一条
from django.utils.translation import ugettext as _
原文链接:http://brucewei777.iteye.com/blog/1138184

作者:zihua | 分类: python django i18n | 标签: django py settings | 阅读: 899 | 发布于: 2013-09-28 23时 |