象形可视化插件(vue-pictorial-chart)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了象形可视化插件(vue-pictorial-chart)相关的知识,希望对你有一定的参考价值。
参考技术A ** 注意: 目前支持大部分svg图标将unicode象形图保存到mysql
【中文标题】将unicode象形图保存到mysql【英文标题】:Save unicode pictograms to mysql 【发布时间】:2019-07-10 23:09:38 【问题描述】:我有一些代码(在 django 服务器上)将 POST 请求中包含的 json 数据写入 mysql db。 有些请求包含特定的象形图,例如 ????要么 ????。 这些应该被写入文本字段,但会导致数据库错误。
处理请求的代码如下所示
json_data = json.loads(request.body.decode('utf-8'))
i = Event(event=json_data['event'], dt=parse(json_data['dt']),
object_id=json_data['object_id'], user_id=json_data['user_id'],
payload=json_data['payload'])
i.save()
db 排序规则当前设置为 uft8_general_ci。
返回的错误是“不正确的字符串值”。
将此类请求与其他请求一起保存到数据库的最佳做法是什么?
更新:通过将排序规则更改为 utf8mb4_general_ci,我现在可以直接将这些符号写入 db(通过 phpmyadmin),但 python 请求仍然没有运气。同样的错误。 django 方面的东西?
【问题讨论】:
您需要使用 UTF8MB4 请为相关表格提供SHOW CREATE TABLE
。我们需要验证有问题的列是CHARACTER SET utf8mb4
,而不是utf8
。
【参考方案1】:
将 MySQL 字符集更改为 utf8mb4 将允许您将象形图直接序列化到 DB,但为了在 Django 端解决此问题,您还必须更新您的 settings.py(见下文):
DATABASES =
'default':
'ENGINE':'django.db.backends.mysql',
'NAME': 'mydatabase',
'OPTIONS': 'charset': 'utf8mb4',
另见MySQL “incorrect string value” error when save unicode string in Django
【讨论】:
以上是关于象形可视化插件(vue-pictorial-chart)的主要内容,如果未能解决你的问题,请参考以下文章