情况说明:Fuel6.0安装的Horizon中文支持不好,经查,发现
root@node-9:/usr/share/openstack-dashboard/openstack_dashboard/locale# django-admin compilemessages
Using: Python 2.7
CommandError: Can't find msgfmt. Make sure you have GNU gettext tools 0.15 or newer installed.
说明msgfmt没有安装。导致其编译失败,所以中文显示不全。
修订方法:
1 修改如下目录下的django.po文件
root@node-9:/usr/share/openstack-dashboard/openstack_dashboard/locale/zh_CN/LC_MESSAGES
将需要的待翻译内容加入,例如我加入了。
#: dashboards/project/diyiti/panel.py:23
msgid "Diyiti"
msgstr "第一题"
2 将po文件转为二进制文件。由于控制节点没有转换工具(缺msgfmt),所以改为在我个人PC上转换。
转换方法,将/locale/zh_CN/LC_MESSAGES/django.po连目录一起tar到我PC上。解开。执行django-admin compilemessages
如下,
cd /tmp
django-admin compilemessages
3 将文件传回django.po对应目录
大体命令如下
[root@gdc1000 tmp]# cd locale/zh_CN/LC_MESSAGES/django.
django.mo django.po
[root@gdc1000 tmp]# cd locale/zh_CN/LC_MESSAGES/
[root@gdc1000 LC_MESSAGES]# ls
django.mo django.po
[root@gdc1000 LC_MESSAGES]# vi django.mo
[root@gdc1000 LC_MESSAGES]# scp django.mo 10.20.0.2:/root/
django.mo 100% 211KB 210.5KB/s 00:00
[root@gdc1000 LC_MESSAGES]# ls
django.mo django.po
[root@gdc1000 LC_MESSAGES]# pwd
/tmp/locale/zh_CN/LC_MESSAGES
4 验证
验证可以如下验证[2]
参考:
1
http://blog.csdn.net/tantexian/article/details/38819185
2
https://wiki.openstack.org/wiki/I18n/TranslatableStrings