欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

django的settings中設(shè)置中文支持的實(shí)現(xiàn)

 更新時(shí)間:2019年04月28日 14:30:40   投稿:zx  
這篇文章主要介紹了django的settings中設(shè)置中文支持的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

今天創(chuàng)建了個(gè)django工程,用的是目前django 1.9.6,創(chuàng)建工程后,settings.py中設(shè)置中文顯示支持(最簡(jiǎn)單的,例如把a(bǔ)dmin界面的默認(rèn)英文改成中文),定義

TIME_ZONE = 'Asia/Shanghai'
LANGUAGE_CODE = 'zh-cn'

當(dāng)然TIME_ZONE只是指定時(shí)區(qū),和中文顯示沒有關(guān)系,這里一并修改了默認(rèn)值。結(jié)果運(yùn)行項(xiàng)目時(shí)報(bào)錯(cuò)了,如下:

django IOError: No translation files found for default language zh-cn

即找不到zh-cn對(duì)應(yīng)的本地化文件。一般而言,zh-cn編碼對(duì)應(yīng)的本地化文件夾為zh_CN,我去django的安裝目錄查找zh_CN,結(jié)果確實(shí)沒有找到,在django安裝目錄的contrib子目錄下的一系列子目錄的locale文件夾中,沒有zh_CN,而有zh_Hans。不知道為什么django的這個(gè)版本沒有zh_CN文件夾,可能是一個(gè)bug吧。網(wǎng)上有人說將zh_Hans目錄全部復(fù)制一份并命名為zh_CN,就可以解決這個(gè)問題,我試了下,再次運(yùn)行確實(shí)可行了,在admin界面顯示了中文。至于這種比較山寨的方法有沒有隱患,現(xiàn)在還不知道,以后遇到再說吧。

不過話說回來,其實(shí)還有正統(tǒng)的方式去生成國際化文件,如下命令:

django-admin.py makemessages -l zh_CN

不過這個(gè)需要gettext組件,如果你是在windows上開發(fā),那么你需要自己安裝這個(gè)組件,

http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/下載gettext-runtime-X.zip以及gettext-tools-X.zip的最新版(注:X為版本號(hào))并解壓后,將兩個(gè)bin目錄可以合并后放入系統(tǒng)環(huán)境變量中。不過該方法我沒有驗(yàn)證,感興趣的可以試試。

后來我又想,django之前的老版本是有zh_CN的,要說這個(gè)一個(gè)bug,估計(jì)也比較低級(jí),按理不應(yīng)該的。于是又查,發(fā)現(xiàn)貌似zh_Hans可能已經(jīng)替代zh_CN了。Han表示漢字,s表示Simplified簡(jiǎn)體,反正我設(shè)置為L(zhǎng)ANGUAGE_CODE = 'zh-hans'也是正常顯示中文。

zh-cn will expired in Django1.9, the new format is zh-hans, but drf3.1.0 does not support this type of language.

上面的意思是在django1.9中,zh-cn過期了,可以用zh-hans替代,不過可能有些django的第三方模塊還沒有跟上這個(gè)變化。

總之,仁者見仁智者見智了,其實(shí)大可不必如此研究,只是突然對(duì)這個(gè)比較感興趣所以多研究了一會(huì)。

ps:網(wǎng)上很多地方對(duì)于LANGUAGE_CODE = 'zh-cn'有各種不同寫法,包括zh_CN,zh-CN等,有的人還說只能用某某寫法等,反正我是沒看出來區(qū)別,我也都試了,都沒發(fā)現(xiàn)問題。

另外說個(gè)題外話,之前一直都不知道settings.py中的USE_I18N和USE_L10N是什么意思,直到看到了下面的一段話:

當(dāng) Web 服務(wù)搭建好以后,可以接收來自全球不同國家用戶訪問。這樣就要求開發(fā)人員調(diào)整軟件,使之能適用于不同的語言,即國際化和本地化。國際化

-- Internationalization,i 和 n 之間有 18 個(gè)字母,簡(jiǎn)稱 I18N,。本地化 -- localization, l 和 n 之間有 10 個(gè)字母,簡(jiǎn)稱 L10N。國際化意味著 Web

產(chǎn)品有適用于任何地方的潛力,針對(duì)程序開發(fā)人員;本地化則是指使一個(gè)國際化的程序?yàn)榱嗽谀硞€(gè)特定地區(qū)使用而進(jìn)行實(shí)際翻譯的過程,針對(duì)翻譯人員而言。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實(shí)現(xiàn)小程序推送頁面收錄腳本

    python實(shí)現(xiàn)小程序推送頁面收錄腳本

    這篇文章主要介紹了python實(shí)現(xiàn)小程序推送頁面收錄腳本,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 關(guān)于Matplotlib繪制動(dòng)態(tài)實(shí)時(shí)曲線的方法改進(jìn)指南

    關(guān)于Matplotlib繪制動(dòng)態(tài)實(shí)時(shí)曲線的方法改進(jìn)指南

    這篇文章主要給大家介紹了關(guān)于Matplotlib繪制動(dòng)態(tài)實(shí)時(shí)曲線的相關(guān)資料,matplotlib是python里最popular的畫圖工具,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-06-06
  • python使用pygame模塊實(shí)現(xiàn)坦克大戰(zhàn)游戲

    python使用pygame模塊實(shí)現(xiàn)坦克大戰(zhàn)游戲

    這篇文章主要為大家詳細(xì)介紹了python使用pygame模塊實(shí)現(xiàn)坦克大戰(zhàn)游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • django orm模糊查詢、正則匹配多個(gè)值方式

    django orm模糊查詢、正則匹配多個(gè)值方式

    這篇文章主要介紹了django orm模糊查詢、正則匹配多個(gè)值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python判斷圖片寬度和高度后刪除圖片的方法

    python判斷圖片寬度和高度后刪除圖片的方法

    這篇文章主要介紹了python判斷圖片寬度和高度后刪除圖片的方法,涉及Python中os模塊與Image模塊的相關(guān)使用技巧,需要的朋友可以參考下
    2015-05-05
  • Python入門教程(十七)Python的While循環(huán)

    Python入門教程(十七)Python的While循環(huán)

    這篇文章主要介紹了Python入門教程(十七)Python的While循環(huán),Python是一門非常強(qiáng)大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • Python+OpenCV圖像處理——圖像二值化的實(shí)現(xiàn)

    Python+OpenCV圖像處理——圖像二值化的實(shí)現(xiàn)

    這篇文章主要介紹了Python+OpenCV實(shí)現(xiàn)圖像二值化,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下
    2020-10-10
  • python 循環(huán)讀取txt文檔 并轉(zhuǎn)換成csv的方法

    python 循環(huán)讀取txt文檔 并轉(zhuǎn)換成csv的方法

    今天小編就為大家分享一篇python 循環(huán)讀取txt文檔 并轉(zhuǎn)換成csv的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python Django框架中的嵌套序列化器詳解

    python Django框架中的嵌套序列化器詳解

    在Web開發(fā)領(lǐng)域,創(chuàng)建和使用API(應(yīng)用程序編程接口)是很常見的,Django Rest Framework(DRF)是一個(gè)強(qiáng)大的工具包,在DRF中,一個(gè)關(guān)鍵概念是序列化器,在本文中,我們將深入研究Django中嵌套序列化器的概念以及它們?nèi)绾未龠M(jìn)復(fù)雜數(shù)據(jù)關(guān)系的處理,需要的朋友可以參考下
    2023-10-10
  • pytorch中構(gòu)建模型的3種方法詳解

    pytorch中構(gòu)建模型的3種方法詳解

    這篇文章主要介紹了pytorch中構(gòu)建模型的3種方法,分別是使用繼承nn.Module基類構(gòu)建自定義模型,使用nn.Sequential按層順序構(gòu)建模型或者,繼承nn.Module基類構(gòu)建模型并輔助應(yīng)用模型容器進(jìn)行封裝(nn.Sequential,nn.ModuleList,nn.ModuleDict),需要的朋友可以參考下
    2023-09-09

最新評(píng)論