解决 Flask-sqlalchemy 中文乱码

当在使用 flask-sqlalchemy 操作 mysql 数据库时中文乱码或者直接报错。
解决方法如下:

from flask_sqlalchemy import SQLAlchemy

db = SQLALchemy(use_native_unicode='utf8')

配置 mysql 默认字符编码为 utf8

[mysqld]
character_set_server = utf8

[client]
default-character-set = utf8

[mysql]
default-character-set = utf8

重启MySQL的服务,创建 数据库并设置默认字符集 (我发现这步才是关键点,第一步 flask 字符集设置与不设置都没有关系)。

create database DATABASE_NAME default character set utf8;

如果你数据库已存在内容请将数据库,表默认字符集改为 utf8

posted @ 2017-11-07 19:39  liwanggui  阅读(3816)  评论(0编辑  收藏  举报