Django Tastypie - 提供存储在db中的表情符号

时间:2013-03-02 19:35:03

标签: python django emoji tastypie

我正在为我的api使用 django tastypie 。 db是 MySQL

经过几天的摆弄,我设法使用utf8mb4字符集在数据库中存储表情符号图标。

直接从控制台(在Mac上)查询数据库时,从api中提取时,我看到表情符号很好, (例如使用浏览器) ),json显示问号。 这让我相信问题不在于数据库,而在于django / tastypie数据库连接。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

解决方案是在DJango设置中:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'OPTIONS': {'charset': 'utf8mb4'},
        (...)

答案 1 :(得分:0)

如果将JSON转储保存到文本文件并使用UTF8文本编辑器打开它会怎么样?表情符号会重新出现吗?

我怀疑,当在浏览器中显示JSON时,浏览器会回退到Latin-1编码,最终会出现问号。您的浏览器中可能有一个设置来设置编码。

检查来自服务器的“Content-Type”标头。它是否说application/json; encoding=utf-8