要實現Django的國際化和本地化,需要做以下步驟:
LANGUAGE_CODE = 'zh-hans' # 設置默認語言為簡體中文
USE_I18N = True # 啟用國際化
USE_L10N = True # 啟用本地化
{% trans %}
標簽來標記需要翻譯的文本,例如:{% trans "Hello World" %}
django-admin makemessages -l zh_Hans # 生成簡體中文的語言文件
在生成的語言文件中進行翻譯,將需要翻譯的文本翻譯成對應的語言。
編譯翻譯文件,執行以下命令:
django-admin compilemessages
在模板中使用{% trans %}
標簽來翻譯文本。
如果需要根據用戶的瀏覽器語言自動切換語言,可以在視圖中添加以下代碼:
from django.utils.translation import activate
from django.utils.translation import ugettext_lazy as _
def my_view(request):
language = request.META.get('HTTP_ACCEPT_LANGUAGE', '')
if language.startswith('zh'):
activate('zh_Hans') # 激活簡體中文
else:
activate('en') # 激活英語
通過以上步驟,就可以實現Django的國際化和本地化功能。