django.contrib.admin 管理模块中添加中文记录出错说明.

django.contrib.admin 管理模块中添加中文记录出错说明.

From :http://www.selfcai.com.cn/?p=482

 

查看官方文档.确认是数据库编码问题:
http://docs.djangoproject.com/en/1.1/ref/settings/#setting-DEFAULT_CHARSET
1.查看本机mysql 数据库的default编码方式
      mysql> show variables like ‘%server%’;
+———————-+——————-+
| Variable_name        | Value             |
+———————-+——————-+
| character_set_server | latin1            |
| collation_server     | latin1_swedish_ci |
| server_id            | 0                 |
+———————-+——————-+
3 rows in set (0.00 sec)
2.而django 则采用UTF-8 ,数据插入后,编码不一致,造成添加出错.
     DEFAULT_CHARSET
     Default: ‘utf-8′
    Default charset to use for all HttpResponse objects, if a MIME type isn’t manually specified. Used with   DEFAULT_CONTENT_TYPE to construct the Content-Type header.

解决方法:
       新建数据库以UTF-8编码
       CREATE DATABASE `django` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
       当然也可以用phpmyadmin来操作.

 

posted @ 2011-08-17 13:38  snowlueng  阅读(307)  评论(0编辑  收藏  举报