參考https://conyli.cc/chapter09.html
django 國際化和本地化
Django對于國際化和本地化提供了完整的支持攀唯,允許開發(fā)者將站點(diǎn)內(nèi)容翻譯成多種語言番宁,而且可以處理本地化的時間日期數(shù)字和時區(qū)格式等本地化的顯示內(nèi)容摧茴。在開始之前,先需要區(qū)分一下國際化和本地化兩個概念习寸。國際化和本地化都是一種軟件開發(fā)過程祭阀。國際化(Internationalization,通车婀穑縮寫為i18n)师幕,是指一個軟件可以被不同的國家和地區(qū)使用,而不會局限于某種語言诬滩。本地化(Localization霹粥,縮寫為l10n)是指對國際化的軟件將其進(jìn)行翻譯或者其他本地化適配,使之變成適合某一個國家或地區(qū)使用的軟件的過程疼鸟。Django通過自身的國際化框架后控,可以支持超過50種語言。
Django的國際化框架可以讓開發(fā)者很方便的在Python代碼和模板中標(biāo)注需要翻譯的字符串空镜,這個框架依賴于GNU gettext開源軟件來生成和管理消息文件(message file)浩淘。消息文件是一個純文本文件,代表一種語言的翻譯吴攒,存放著在站點(diǎn)應(yīng)用中找到的部分或者所有需要翻譯的字符串以及對應(yīng)的某種語言的翻譯馋袜,就像一個字典一樣。消息文件的后綴名是.po舶斧。
一旦完成翻譯欣鳖,可以把消息文件編譯,以快速訪問翻譯內(nèi)容茴厉,編譯后的消息文件的后綴名是.mo泽台。