我想将我的Django / mysql站点设置为使用UTF-8。请指导我在django和mysql中进行的更改,以确保以下内容。
表单中用户输入的数据将始终编码为UTF-8
将数据存储在mysql中,格式为utf-8
正确显示模板中的utf8编码数据
此外,我想知道转移到UTF-8编码是否会删除unicode解码错误,如下所示。
UnicodeDecodeError:'ascii'编解码器无法解码位置55的字节0xc2:序数不在范围内(128)
非常感谢。
答案 0 :(得分:23)
这里有一些建议:
1)创建数据库时使用utf8编码
CREATE DATABASE <dbname> CHARACTER SET utf8;
2)将以下特殊注释放在脚本的第一行或第二行:
# -*- coding: utf-8 -*-
nice article about python and utf8
3)在* .py文件中使用带有u前缀的unicode字符串
unicodeString = u"hello Unicode world!"
4)在基本模板的部分中使用以下元标记:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">