【Django3.0】配置篇:全球化配置

Mr資料楊發表於2020-11-04

Django3.0中settings.py的全球化配置。

模板示例

LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False

模板引數說明

  1. DATE_FORMAT
    用於在系統任何部分中顯示日期欄位的預設格式。
    預設值:(例如)'N j, Y’Feb. 4, 2003

  2. DATE_INPUT_FORMATS
    在日期欄位上輸入資料時將接受的格式列表。
    預設值:

[
    '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06'
    '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
    '%d %b %Y', '%d %b, %Y',            # '25 Oct 2006', '25 Oct, 2006'
    '%B %d %Y', '%B %d, %Y',            # 'October 25 2006', 'October 25, 2006'
    '%d %B %Y', '%d %B, %Y',            # '25 October 2006', '25 October, 2006'
]
  1. DATETIME_FORMAT
    用於在系統任何部分中顯示日期時間欄位的預設格式。
    預設值:(例如)'N j, Y, P’Feb. 4, 2003, 4 p.m.

  2. DATETIME_INPUT_FORMATS
    在日期時間欄位上輸入資料時將接受的格式列表。
    預設值:

[
    '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
    '%Y-%m-%d %H:%M:%S.%f',  # '2006-10-25 14:30:59.000200'
    '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
    '%Y-%m-%d',              # '2006-10-25'
    '%m/%d/%Y %H:%M:%S',     # '10/25/2006 14:30:59'
    '%m/%d/%Y %H:%M:%S.%f',  # '10/25/2006 14:30:59.000200'
    '%m/%d/%Y %H:%M',        # '10/25/2006 14:30'
    '%m/%d/%Y',              # '10/25/2006'
    '%m/%d/%y %H:%M:%S',     # '10/25/06 14:30:59'
    '%m/%d/%y %H:%M:%S.%f',  # '10/25/06 14:30:59.000200'
    '%m/%d/%y %H:%M',        # '10/25/06 14:30'
    '%m/%d/%y',              # '10/25/06'
]
  1. DECIMAL_SEPARATOR
    格式化十進位制數字時使用的預設十進位制分隔符。
    預設值:(’.'點)

  2. FIRST_DAY_OF_WEEK
    一個數字,代表一週的第一天。
    預設值:(0星期日,以此類推)

  3. FORMAT_MODULE_PATH
    Python包的完整Python路徑,其中包含專案語言環境的自定義格式定義。
    預設值: None

  4. LANGUAGE_CODE
    安裝的語言程式碼。
    預設值: ‘en-us’

  5. LANGUAGE_COOKIE_AGE
    Cookie的年齡(以秒為單位)
    預設值:(None在瀏覽器關閉時到期)

  6. LANGUAGE_COOKIE_DOMAIN
    用於語言Cookie的域。
    預設: None

  7. LANGUAGE_COOKIE_HTTPONLY
    是否HttpOnly在語言cookie上使用標誌。
    預設值:False

  8. LANGUAGE_COOKIE_NAMELANGUAGE_COOKIE_PATH
    用於語言cookie的cookie的名稱。
    預設: ‘django_language’

  9. LANGUAGE_COOKIE_SAMESITE
    在語言Cookie上設定的路徑。
    預設: ‘/’

  10. LANGUAGE_COOKIE_SECURE
    Cookie上SameSite標誌的值。防止Cookie在跨站點請求中傳送。
    預設: None

  11. LANGUAGES
    所有可用語言的列表。

from django.utils.translation import gettext_lazy as _

LANGUAGES = [
    ('zh', _('簡體中文')),
    ('en', _('English')),
]
  1. LANGUAGES_BIDI
    預設值:從右到左書寫的所有語言程式碼的列表。

  2. LOCALE_PATHS
    Django在其中查詢翻譯檔案的目錄列表。
    預設值:([]空列表)

LOCALE_PATHS = [
    '/home/www/project/common_files/locale',
    '/var/local/translations/locale',
]
  1. MONTH_DAY_FORMAT
    在僅顯示月份和日期的情況下,用於Django管理員更改列表頁面上日期欄位的預設格式(可能還有系統其他部分的格式)。
    預設值: ‘F j’

  2. NUMBER_GROUPING
    在數字的整數部分上分組在一起的位數。
    預設值: 0

  3. SHORT_DATE_FORMAT
    可用格式,可用於在模板上顯示日期欄位。
    預設值:('m/d/Y’例如12/31/2003)

  4. SHORT_DATETIME_FORMAT
    可用的格式,可用於在模板上顯示日期時間欄位。
    預設值:(例如)'m/d/Y P’12/31/2003 4 p.m.

  5. THOUSAND_SEPARATOR
    格式化數字時使用預設的千位分隔符。
    預設值:(’,'逗號)

  6. TIME_FORMAT
    用於在系統任何部分中顯示時間欄位的預設格式。
    預設值:('P’例如)4 p.m.

  7. TIME_INPUT_FORMATS
    在時間欄位上輸入資料時將接受的格式列表。
    預設值:

[
    '%H:%M:%S',     # '14:30:59'
    '%H:%M:%S.%f',  # '14:30:59.000200'
    '%H:%M',        # '14:30'
]
  1. TIME_ZONE
    修改成你需要的時區,預設是美國芝加哥時間。
    TIME_ZONE:修改成Asia/Shanghai。

  2. USE_I18N
    是否應啟用Django的翻譯系統。
    預設值: True

  3. USE_L10N
    是否啟用資料的本地化格式。
    預設值:False

  4. USE_THOUSAND_SEPARATOR
    是否使用千位分隔符顯示數字。
    預設值:False

  5. USE_TZ
    預設日期時間是否為時區。
    設定成False是為了避免models儲存資料時候發生時間不一致的問題(北京時間為 UTC+8 )。
    預設值:False

  6. YEAR_MONTH_FORMAT
    用於Django管理員更改列表頁面上日期欄位的預設格式。
    預設: ‘F Y’

相關文章