如何解决每次都需要运行makemessages吗?
我正在阅读makemessages
的django文档,但措词不是很清楚:
在当前目录的整个源代码树上运行,并拉出所有标记为要翻译的字符串。它在conf / locale(在Django树中)或locale(用于项目和应用程序)目录中创建(或更新)消息文件。对消息文件进行更改后,需要使用可编译的消息对它们进行编译,以与内置的gettext支持一起使用。
在上面的文字中,我似乎不清楚makemessages
将“拉出”标记为要翻译的字符串的含义。 (把它们拿出来做什么?去哪里?)
与此同时,compilemessages
描述很有意义,因为一旦更改了语言文件,它就可以简单地编译消息。
如果makemessages
是否正在寻找我需要的工作,我应该何时使用compilemessages
? makemessages
的意义是什么?
解决方法
makemessages
用于浏览您的应用程序以查找标记为翻译的字符串。一旦有了这些字符串,就会将它们放入po
文件中。如果随后添加其他字符串以转换为您的应用程序,则需要运行makemessages
来生成更新的po
文件。 compilemessages
使用po
文件的内容来创建mo
文件,因此必须首先更新po
文件。
makemessages
接受语言环境的参数:
pipenv run django-admin makemessages --locale=de
这使您可以为应用支持的每个语言环境创建一个po
文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。