解决django后台管理界面添加中文内容乱码问题

yipeiwu_com7年前Python基础

在学习使用django做一个简单的个人博客项目,通过admin后台添加中文文章内容的时候,遇到中文内容显示乱码的问题。

排除了网上资料中的提到的几个问题:

1.数据上传默认采用的是unicode编码

2.与settings.py中的LANGUAGE_CODE无关

3.在model中添加#coding:utf-8也没啥用

最后实际的问题是,我在使用mysql创建数据库时没有使用utf8编码,我重新创建了一个utf8字符集的数据库就解决了。

CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE DATABASE 的语法:

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
[create_specification [, create_specification] ...]

create_specification:
[DEFAULT] CHARACTER SET charset_name
| [DEFAULT] COLLATE collation_name

我是新建立了一个字符集,不知道修改字符编码是否管用,也粘在这里吧

更改数据库的字符编码

ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

以上这篇解决django后台管理界面添加中文内容乱码问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python获取程序执行文件路径的方法(推荐)

python获取程序执行文件路径的方法(推荐)

1.获取当前执行主脚本方法:sys.argv[0]和_ file _ (1)sys.argv 一个传给Python脚本的指令参数列表。sys.argv[0]是脚本的名字。一般得到的是...

python+logging+yaml实现日志分割

python+logging+yaml实现日志分割

本文实例为大家分享了python+logging+yaml实现日志分割的具体代码,供大家参考,具体内容如下 1、建立log.yaml文件 version: 1 disable_exi...

Python字符串通过'+'和join函数拼接新字符串的性能测试比较

有一道Python面试题, 以下代码有什么局限性,要如何修改 def strTest(num): s = 'Hello' for i in range(num): s...

利用python实现短信和电话提醒功能的例子

有时候,我们需要程序帮我们自动检测某些事件的发生 这个需求是广泛存在的 因此,这里整理了利用python实现短信和电话提醒功能的方法 主要需要完成以下4个步骤: - 安装核心库:twi...

Python中的上下文管理器和with语句的使用

Python2.5之后引入了上下文管理器(context manager),算是Python的黑魔法之一,它用于规定某个对象的使用范围。本文是针对于该功能的思考总结。 为什么需要上下文管...