Django MySQL数据库配置以及管理界面提交中文错误解决


第一步:连接数据库

开发环境:Ubuntu

修改settings.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  
        'NAME': 'blog',                     
     
        'USER': 'root',
        'PASSWORD': 'root',
        'HOST': '127.0.0.1',                     
        'PORT': '3306',                   
    }
}

测试:

>>> from django.db import connection
>>> cursor = connection.cursor()

未错误,连接成功!

第二步:管理界面中文提交错误:

django配置要修改项目根目录的settings.py中的:

TIME_ZONE = 'America/Chicago'

LANGUAGE_CODE = 'en-us'

替换成:

TIME_ZONE = 'Asia/Shanghai'

LANGUAGE_CODE = 'zh-cn'

Python安装路径下的:/usr/local/lib/python2.7/dist-packages/django/conf/global_settings.py中的:

TIME_ZONE = 'America/Chicago'

LANGUAGE_CODE = 'en-us'

替换成:

TIME_ZONE = 'Asia/Shanghai'

LANGUAGE_CODE = 'zh-cn'

更多的TIME_ZONE

http://en.wikipedia.org/wiki/List_of_tz_zones_by_name

文件编码更改(global_settings.py):

DEFAULT_CHARSET = 'utf-8'

FILE_CHARSET = 'utf-8'

经过修改后未能解决问题,只是管理界面变成中文,提交中文仍然错误!猜测可能是数据库本身编码问题,重新创建数据库,加入编码:

CREATE DATABASE blog CHARACTER SET utf8;

支持中文了。

Django 的详细介绍:请点这里
Django 的下载地址:请点这里

推荐阅读:

Ubuntu Server 12.04 安装Nginx+uWSGI+Django环境

Django实战教程

Django Python MySQL Linux 开发环境搭建

相关内容