flask mysql py3.7_py3-flask-pymysql 兼容问题(use_native_unicode).py
时间: 2023-12-10 08:04:13 浏览: 135
您好,关于 Flask 和 PyMySQL 的兼容问题,主要是因为 PyMySQL 在 Py3.7 版本之后默认使用了本地字符集,但 Flask-pymysql 在 Py3.7 中仍使用旧的字符集,在这种情况下,如果您使用 Flask-pymysql,您可能会遇到兼容性问题。
解决方法是在创建数据库连接时设置 use_native_unicode=True,这将强制使用本地字符集,这样就可以避免兼容性问题了。以下是一个示例代码:
```python
from flask import Flask
from flask_pymysql import MySQL
app = Flask(__name__)
app.config['MYSQL_USER'] = 'user'
app.config['MYSQL_PASSWORD'] = 'password'
app.config['MYSQL_DB'] = 'db'
app.config['MYSQL_CURSORCLASS'] = 'DictCursor'
app.config['MYSQL_CHARSET'] = 'utf8mb4'
mysql = MySQL(app, use_native_unicode=True)
```
在这个示例中,我们将 use_native_unicode 设置为 True,以便使用本地字符集。如果您使用 PyMySQL 直接连接数据库,也可以通过设置 use_unicode=True 来解决此问题。
希望这可以帮助您解决兼容性问题。
阅读全文