日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Django 汉化

發(fā)布時間:2024/5/8 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django 汉化 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Django 漢化

1 簡介

Django 支持國際化,多語言。Django的國際化是默認開啟的,如果您不需要國際化支持,那么您可以在您的設置文件中設置 USE_I18N = False,那么Django會進行一些優(yōu)化,不加載國際化支持機制。

NOTE: 18表示Internationalization這個單詞首字母I和結(jié)尾字母N之間的字母有18個。I18N就是Internationalization(國際化)的意思。

Django 完全支持文本翻譯,日期時間數(shù)字格式和時區(qū)。

本質(zhì)上講,Django做了兩件事:

  • 它允許開發(fā)者指定要翻譯的字符串
  • Django根據(jù)特定的訪問者的偏好設置 進行調(diào)用相應的翻譯文本。
  • 2 漢化配置

    這是在Django 2.1下進行的。

    2.1 在settings.py中進行配置

    TIME_ZONE = 'Asia/Shanghai' LANGUAGE_CODE = 'zh-Hans'USE_I18N = True USE_L10N = True USE_TZ = TrueLANGUAGES = ( # ('en', ('English')),('zh-Hans', ('中文簡體')), # ('zh-Hant', ('中文繁體')), )#翻譯文件所在目錄,需要手工創(chuàng)建 LOCALE_PATHS = (os.path.join(BASE_DIR, 'locale'), )TEMPLATES = [{............'OPTIONS': {'context_processors': [............'django.template.context_processors.i18n',],},}, ]MIDDLEWARE = [............'django.middleware.locale.LocaleMiddleware', ]

    2.2 生成翻譯文件

    python manage.py makemessages -l zh_Hans # 簡體 python manage.py makemessages -l zh_Hant # 繁體

    2.3 手工翻譯 locale 中的 django.po

    ... ...#: .\tutorial\models.py:23 msgid "created at" msgstr "創(chuàng)建于"#: .\tutorial\models.py:24 msgid "updated at" msgstr "更新于"... ...

    2.4 編譯翻譯文件

    通過編譯后才會翻譯才會生效。

    python manage.py compilemessages

    經(jīng)過編譯后得到的目錄結(jié)構(gòu)如下:

    ├── locale │?? └── zh_Hans # 通過makemessages生成的 │?? └── LC_MESSAGES │?? ├── django.mo # 編譯生成的翻譯文件 │?? └── django.po # 要編寫的翻譯文件

    參考:

    https://code.ziqiangxuetang.com/django/django-internationalization.html

    總結(jié)

    以上是生活随笔為你收集整理的Django 汉化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。