这次主要先说下django的中文问题。
因为我的项目代码都是保存在云盘上,所以在默认情况下运维项目工程会报错。
Python使用的的是2.7
Django使用的是1.7
看报错信息就知道是编码问题。以前我一直放到/Users/elvis/Documents这种英文的目录下,所以也就一直没出现过这样的问题。后来是想放到云盘上做个备份,所以问题来了。
其实解决这个问题很简单,编辑django项目中的settings.py文件,加入以下三行
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
这几行是将默认的编码转换格式变成utf-8,
在大多数情况下程序中的字符串是通过utf-8来编码的。
所以只要加上以上三行就可以了.
另外还要确定下views.py文件的编码格式,在文件加入以下一行即可。
# -*- coding: utf-8 -*-
这样在运行保存有中文的路径时就不会像下面这样报错了。
最后说一下为什么要这样设置。
因为在Python2.x的语法中默认的str并不是真正意义上我们理解的字符串, 而是一个byte数组, 或者可以理解成一个纯ascii码字符组成的字符串,而真正意义上通用的字符串则是unicode类型的变量。
先解释到这,关于中文字符的还需要些笔墨,下次说。
?
阅读(5477) | 评论(0) | 转发(0) |