搭建django遇到的中文编码问题:vim等

初学者在Linux环境下搭建Django时遇到中文编码问题,主要涉及vim编辑器、数据库、程序和页面编码。通过设置vim的~/.vimrc文件,包括encoding、fencs、termencoding和fileencoding选项,确保文件以utf-8编码。数据库默认为utf-8,Python文件添加#coding=utf-8注释,HTML页面添加charset=utf-8元标签,逐步解决编码不一致导致的错误。

最近初学django,直接在linux上搭建,遇到了不少问题。一个比较头疼的问题就是编码问题。

按照django book搭建好以后访问admin,需要修改默认的admin_site.html里面的django后台管理为自己的系统名字,发现一输入中文就报错,在网上海翻了一些资料,发现是编码问题。网上一致说用utf-8比较好。那么编辑工具,数据库,程序和页面都要统一为utf-8。

1.编辑工具:用vim编辑的,默认不是utf-8,在网上找资料,说什么的都有!发现设置vim的编码是在~/.vimrc文件里面。我的系统自带没有,创建了一个文件。不停的试,在里面的设置如下就成功了:

 

set encoding=utf8:使用与缓冲的文本,也就是正在编辑的文件,可以理解为vim内部运行的机制。
set fencs=utf8,cp936:fencs就是用来在打开文件的时候进行解码的猜测列表。文件编码没有百分百正确的判断方法,所以vim只能猜测文件编码
set termencoding=cp936 :用ssh远程登录需要设置这个,该编码为中文windows的默认值
set fileencoding=utf8:这个东西尤其重要这个配置的是新建文件和保存文件时文件的编码,如果它的值与encoding(enc)不一样,那么保存的时候Vim会自动把文件内容由encoding(enc)的编码转换为fileencoding(fenc)配置编码再保存。而读取文件的时候,该选项的值会自动同步为fileencodings(fencs):配置的有效编码。(实际上就是上面说的转换规则

总之很容易被他们搞晕--

2.数据库:我按照网上给的查看数据库编码方式查看,发现搭建好以后默认就是utf-8,所以这点略过,网上关于这点有不少答案。

3.程序:我这儿是用的python,因此所有py结尾的文件得在第一行加上一句

#coding=utf-8,python官网有说明。

4.页面:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />这一行是设置页面编码,不过后来我发现后面的有一些html文件没加这句话也能正常显示。再继续研究吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值