我应该在部署中的服务器上将 .po 文件重新编译为 .mo,还是部署 .mo?
Should I recompile .po files to .mo on the server in deployment, or deploy .mo?
我有一个 .po
文件,其中包含我的应用程序的翻译,并使用 django-admin compilemessages
在本地创建了 .mo
文件,这些文件工作正常。
在部署时,我应该在服务器 (Elastic Beanstalk) 上将 po
重新编译为 mo
,还是只在版本控制中跟踪已编译的 mo
文件并上传它们? This .gitignore
template 忽略了 .mo
个文件,这表明它们应该在服务器上编译,但我不确定为什么。编译后的文件是否以某种方式特定于每个服务器?
.po
和 .mo
文件应在您的本地计算机中创建,并在 vcs(版本控制系统)中进行版本控制。一旦它们被上传,你不需要重新编译,只需重新启动你的应用程序,新的字符串就可以工作了。所以:
# local dev machine
python manage.py makemessages
python manage.py compilemessages
# deploy
eb deploy
eb deploy
应该自动重启你的 django 应用程序(我没有使用 eb 的经验)
我有一个 .po
文件,其中包含我的应用程序的翻译,并使用 django-admin compilemessages
在本地创建了 .mo
文件,这些文件工作正常。
在部署时,我应该在服务器 (Elastic Beanstalk) 上将 po
重新编译为 mo
,还是只在版本控制中跟踪已编译的 mo
文件并上传它们? This .gitignore
template 忽略了 .mo
个文件,这表明它们应该在服务器上编译,但我不确定为什么。编译后的文件是否以某种方式特定于每个服务器?
.po
和 .mo
文件应在您的本地计算机中创建,并在 vcs(版本控制系统)中进行版本控制。一旦它们被上传,你不需要重新编译,只需重新启动你的应用程序,新的字符串就可以工作了。所以:
# local dev machine
python manage.py makemessages
python manage.py compilemessages
# deploy
eb deploy
eb deploy
应该自动重启你的 django 应用程序(我没有使用 eb 的经验)