Django 模版當中使用中文 UnicodeDecodeError at / 問題


Django 再次是當中字符編碼問題

今天使用了bootstrap 當中的一些CSS 對自己的博客項目當中的一些東西進行美化

但是很奇怪的是 當 諸如按鈕類的加入 中文字符后 就會提示 UnicodeDecodeError at / 錯誤

很明顯就是字符問題

而最終解決的方案就是 在 settings.py 文件當中加入

ps:百度而來的方法

url:http://hi.baidu.com/kangjun118/item/96a98a0f5c485637a1312d4e

 

  1. FILE_CHARSET='gb18030' 
  2. DEFAULT_CHARSET='utf-8' 

后解決問題

思考 Django當中出現字符問題的一些總結

1)先是數據庫 插入問題 在默認的MySQL當中插入中文字符的時候 會報錯

解決方式就是修改 其數據庫 或數據庫當中某張表 或者某個字段成為UTF-8類型的 即可插入

在原先的總結當中就已經介紹了 修改表某列的字符編碼方式

這里介紹

在MYSQL的安裝目錄下修改my.ini文件中的“default-character-set=”為GB2312或者UTF-8,修改這一項之后,會對MYSQL中的數據庫全部起作用,如果你為了減少以后不必要的麻煩,你也可以只設置你當前要使用的數據庫的編碼,如:

  1. CREATE DATABASE database_name DEFAULT CHARACTER SET utf8 

 

2)然后就是編碼 Django 的底層實現使用的是UTF-8字符 所以在程序設計時候 應該盡量使用utf-8 去進行編碼 而在開始時可以使用 #coding:utf-8 去聲明使用的字符編碼
 

3)Django支持國際化

可以在settings.py 的 MIDDLEWARE_CLASSES 區 進行添加

  1. 添加  
  2. 'django.middleware.locale.LocaleMiddleware' 
  3. MIDDLEWARE_CLASSES 
  4. 設置中,並確保它在 
  5. 'django.contrib.sessions.middleware.SessionMiddleware'  之后 

刷新后會根據你的瀏覽器環境進行轉換使用語言

打開你PROJECT下的settings.py,你可以看到:

"LANGUAGE_CODE =''"默認的是en-us,修改為zh-CN  這樣也可以

 

4)在HTML 模版文件當中 設置編碼格式 在 <head></head>區域添加

  1. <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> 

 

至於先前 設置如下兩個參數 由於還沒有研究深入 所以還未了解其作用,未完待續

         
  • FILE_CHARSET='gb18030' 
  • DEFAULT_CHARSET='utf-8'
  •  

 在linux 當中pycharm開發時候發現模板不能使用中文字  於是 將前面兩個參數都改成utf-8后解決

  • FILE_CHARSET='gb18030' 
  • DEFAULT_CHARSET='utf-8'

本文出自 “某人說我技術宅” 博客,請務必保留此出處http://1992mrwang.blog.51cto.com/3265935/1123023

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM