關於django中文設定的一些簡單問題
from:
posted on august 4, 2010 and tagged as django.
我在學django時因為讀的都是官方文件和英文部落格, 沒遇到中文的問題, 後來開始寫第乙個中文**時就碰到了語言問題. 其實不難, 但也花時間試了幾次才解決的. 寫在這兒給自己提個醒, 初學者看了也省些時間.
終極解決之道
python源**
檔案的儲存方式
html template
database
sqlite
postgresql
mysql
settings.py
終極解決之道
使用utf-8編碼
不要糾纏於gb2312, gb18030之類的問題, 徒增煩惱.
python源**
如果要在python源**中寫中文注釋或變數內容裡出現中文的話, 需要在python檔案的第一行進行宣告, 加下這面這行**:
# -*- coding: utf-8 -*-
我接觸python是從1.x開始, 真正用是從2.x. 從python3.0開始string才是真正的unicode. 而在python2.x中如果出現非ascii字元就必須加上utf-8的宣告.
檔案的儲存方式
無論你是用ultraedit, notepad+還是其它文字編輯器, 都要將檔案編碼設定為unicode. 例如我用vim, 相應的, 我在.vimrc裡也加上了一行
set encoding=utf-8
這樣我就不用操心源**中的中文問題了.
html template
在html template中任何地方都可以直接寫中文而不會出任何問題. 為了正確顯示中文, 在head要加上一行
我發現charset用gb2312和utf-8會影響瀏覽器顯示各個單元的間距. 如果轉換以前的網頁, 就要多加點小心看看有什麼地方要修改間距. 這是個苦活, 沒法寫test. 所以我很尊重前端設計師和測試人員. 這活兒我做不來, 會哭的.
database
sqlite
很簡單, 用manage.py syncdb直接生成就行了
postgresql
sudo -u postgres createdb -e utf8 database_name
mysql
create database database_name default character set utf8;
settings.py
在官方文件裡並沒有明確寫明簡體中文的代號是什麼, 我看locale裡生成的目錄名是zh_cn, 我就跟著用了. 而且好象在ver 0.96裡還管用. 到了ver 1.x裡就不靈了. 後來才發現應該是
language_code = 'zh-cn'
在 'startproject' 生成的預設settings.py裡, 提到在這裡有列表
我沒去看過, 也沒機會用到其它語種.
關於Ubuntu的一些設定
切換ubuntu為控制台登陸.sudo chmod w etc default grub sudo gedit etc default grub 方法1.grub terminal console 上面一行注釋去掉 方法2.grub cmdline linux default quiet splas...
關於TableView Cell的一些設定
tableview 的 separatorstyle 設定是否有線 風格 一 設定cell底部線 的位置 自定義cell內 self.separatorinset uiedgeinsetszero if self respondstoselector selector setlayoutmargin...
關於iOS Tabbar的一些設定
其實ios tabbar的可定製性非常高,我們沒有必要重複造輪子,下面是筆者收集的一些tabbar的常用設定,希望對大家有所幫助。設定tabbar選中顏色 ios7設定如下 self tabbarcontroller.tabbar setselectedimagetintcolor uicolorg...