使用DJANGO+MYSQL开发时,开启django admin, auth, 然后在后台界面添加中文,数据库保存成功,但是在查询时会报错:
TemplateSyntaxError at /admin/auth/group/
Caught DjangoUnicodeDecodeError while rendering: 'ascii' codec can't decode byte 0xe6 in position
0: ordinal not in range(128). You passed in <Group: [Bad Unicode data]> (<class 'django.contrib.auth
.models.Group'>)
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/auth/group/
Django Version: 1.3
Exception Type: TemplateSyntaxError
Exception Value:
Caught DjangoUnicodeDecodeError while rendering: 'ascii' codec can't decode byte 0xe6 in position 0:
ordinal not in range(128). You passed in <Group: [Bad Unicode data]> (<class 'django.contrib.
auth.models.Group'>)
Exception Location: D:\opt\Python27\lib\site-packages\django\utils\encoding.py in force_unicode, line 93
Python Executable: D:\opt\Python27\python.exe
Python Version: 2.7.2
..................
使用的是django自带的模块,应该不会有问题。而且同样的代码在Sqlite3下运行正常,就此判断可以得出应该是Mysql的编码问题。
在创建数据的时候的编码是utf-8的,数据库校对规则为utf8_bin,改成utf8_generial_ci后就正常了。
附:
引用
校对规则一般有这些特征:
· 两个不同的字符集不能有相同的校对规则。
· 每个字符集有一个默认校对规则。例如,latin1默认校对规则是latin1_swedish_ci。
· 存在校对规则命名约定:它们以其相关的字符集名开始,通常包括一个语言名,并且以_ci(大小写不敏感)、_cs(大小写敏感)或_bin(二元)结束。
引用
ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的;
bin 是二进制, a 和 A 会别区别对待.
例如你运行:
SELECT * FROM table WHERE txt = 'a'
那么在utf8_bin中你就找不到 txt = 'A' 的那一行, 而 utf8_general_ci 则可以.
分享到:
相关推荐
使用Python编程语言 Django MySQL数据库开发的web版学生管理系统,里面附带环境搭建的详细过程和开发过程中遇到的一些bug的讲解 使用Python编程语言 Django MySQL数据库开发的web版学生管理系统,里面附带环境搭建...
python+django框架+mysql数据库实现博客项目
django中配置MySql数据库.html
使用Django+MySQL实现的在线电影推荐系统源码 使用Django+MySQL实现的在线电影推荐系统源码 使用Django+MySQL实现的在线电影推荐系统源码 使用Django+MySQL实现的在线电影推荐系统源码 使用Django+MySQL实现...
1、下载安装MySQLdb类库http://www.djangoproject.com/r/python-mysql/2、修改settings.py 配置数据属性复制代码 代码如下:DATABASES = { ‘default’: { ‘ENGINE’: ‘django.db.backends.mysql’, # Add ...
python+django 使用mtv框架开发,web入门程序使用mysql数据库 python+django 使用mtv框架开发,web入门程序使用mysql数据库 python+django 使用mtv框架开发,web入门程序使用mysql数据库 python+django 使用mtv...
今天小编就为大家分享一篇Django读取Mysql数据并显示在前端的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
python+django+mysql电影推荐系统源码,毕业设计 python+django+mysql电影推荐系统源码,毕业设计 python+django+mysql电影推荐系统源码,毕业设计 python+django+mysql电影推荐系统源码,毕业设计 python+...
Django + python + mysql的在线考试系统源码 Django + python + mysql的在线考试系统源码 Django + python + mysql的在线考试系统源码 Django + python + mysql的在线考试系统源码 Django + python + mysql的...
Python开发 MySQL 数据库数据结构设计03. Django配置使用 MySQL.mp4
本文以Win 10,PyCharm 2018,Django 3.0.3,mysql 2008 R2,Navicat for MySQL 11.1为平台和使用环境,通过向自建的表里添加和显示表,介绍django应用MySQL数据库创建网站的过程。希望对初学用django和MySQL创建...
主要给大家介绍了关于Django配置MySQL数据库的完整步骤,文中通过示例代码介绍的非常详细,对大家学习或者使用django具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
今天小编就为大家分享一篇关于使用Django连接Mysql数据库步骤,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
python+Django+mysql实现了连接数据库,动态页面。对于新学习python和有一部分基础的开发者和学员来说非常有帮助,按照步骤一步一步的做即可。
Django中使用Mysql步骤,简要方法。Django
使用python语言Django网络框架编写的跳蚤市场项目,可做毕业设计,内涵mysql数据库文件可直接导入mysql数据库,下载即可运行。
本文将介绍如何使用Python的Django框架和MySQL数据库来设计和实现一个家政服务网站管理系统,帮助读者了解系统的基本功能和开发流程。 第一部分:需求分析与系统设计 在这一部分,我们将对家政服务网站管理系统的...
本文实例讲述了django连接mysql数据库及建表操作。分享给大家供大家参考,具体如下: django连接mysql数据库需要在project同名的目录下面的__init__.py里面加入下面的东西 import pymysql pymysql.install_as_...
今天小编就为大家分享一篇Django使用Mysql数据库已经存在的数据表方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧