1. windows 开发环境
a. 下载:
下载地址http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer/mingw-get/
安装
b. 安装
mingw-get install gettext
c. 加入环境变量
C:\MinGW\bin
d. 再次运行
django-admin.py makemessages -l zh_CN 成功
备注:
如果不安装,django-admin.py makemessages -l zh_CN,出现错误提示 xgettext 不是内部命令也不是外部命令。
2. 国际化
a. 配置django.middleware.locale.LocaleMiddleware, 在setting.py文件
配置3个参数
LANGUAGE_CODE
USE_I18N
MIDDLEWARE_CLASSES
eg:
LANGUAGE_CODE = 'en-us'
USE_I18N = True
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
)
请注意注意 MIDDLEWARE_CLASSES 中的'django.middleware.locale.LocaleMiddleware',
需要放在'django.contrib.sessions.middleware.SessionMiddleware' 后面
b. 创建语言文件
运行 django-admin.py makemessages -l zh_CN
作用:
产生 locale/zh_CN/LC_MESSAGES/django.po 文件
在相应的app目录下:
创建: conf/locale
在相应的app下运行命令:
django-admin.py makemessages -l zh_CN
结果:
conf/locale/zh_CN/LC_MESSAGES/django.po
eg:
#: .\views.py:24
msgid "Monday"
msgstr "星期一"
c. 编译信息文件
运行django-admin.py compilemessages
作用:
创建信息文件之后,每次对其做了修改,都需要用 django-admin.py compilemessages 编译成“.mo”文件供 gettext 使用
在相应的app下运行命令:
django-admin.py compilemessages
结果:
conf/locale/zh_CN/LC_MESSAGES/django.mo