mysql - 如何设置 django 和 mysql 使用 UTF-8

标签 mysql django utf-8

我想将我的 Django/mysql 站点设置为使用 UTF-8。请指导我必须在 django 和 mysql 中进行的更改,以确保以下内容。

  1. 用户在表单中输入的数据将始终编码为 UTF-8

  2. 将mysql中的数据存储为utf-8

  3. 正确显示模板中utf8编码的数据

  4. 另外,我想知道转向 UTF-8 编码是否会消除如下所示的 unicode 解码错误。

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 55: ordinal not in range(128)

非常感谢。

最佳答案

这里有一些建议:

1) 创建数据库时使用utf8编码

CREATE DATABASE <dbname> CHARACTER SET utf8;

docs

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">

关于mysql - 如何设置 django 和 mysql 使用 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10061842/

相关文章:

Mysql插入2个表

php - PHP 中的explode() 问题

c# - 在 C# 中创建通用 MySQL SELECT 语句

python - ProgrammingError : relation "django_session" does not exist

python - 实用 Django 项目 - 第 183 和 184 页

Python 覆盖率徽章,如何获得?

c++ - 如何从 SDL_TEXTINPUT 获取 utf-8 输入?

java - Ubuntu/Tomcat 服务器 UTF-8 编码问题

Mysql UTF-8意外字符整理

mysql - 在 Oracle 中获取计数和分组依据