我应该在部署服务器上重新编译.po文件到.mo文件,还是部署.mo?

时间:2016-10-01 00:50:40

标签: django internationalization translation gettext

我有一个包含我的应用翻译的.po文件,并使用django-admin compilemessages在本地创建.mo个文件,这些文件正常工作。

在部署中,我应该在服务器(Elastic Beanstalk)上重新编译pomo,还是只跟踪版本控制中编译的mo文件并上传它们? This .gitignore template忽略了.mo个文件,表明它们应该在服务器上编译,但我不确定原因。编译文件是否以某种方式特定于每个服务器?

1 个答案:

答案 0 :(得分:0)

应在本地计算机中创建

.po.mo个文件,并在vcs(版本控制系统)中进行版本控制。一旦上传,你不需要重新编译,只需重新启动你的应用程序,新的字符串应该工作。所以:

# local dev machine
python manage.py makemessages 
python manage.py compilemessages

# deploy
eb deploy

eb deploy应该自动重启你的django应用程序(我没有使用eb的经验)