mysql - Django 查询不考虑特殊字符

标签 mysql django character-encoding

我在 django 查询(Django 1.9.2)中遇到了特殊字符的问题。

我创建了一个在其中存储单词的模型,并且我使用西类牙语词典中的单词向该模型提供数据,使用的代码如下:

MyModel.objects.get_or_create(word=myword)

现在我意识到还没有添加包含特殊字符的单词,因此,例如,数据库中的 MyModel 只有一行 añoano!当我查询数据库时,我为这两个查询检索相同的对象:

MyModel.objects.get(word='año')
MyModel.objects.get(word='ano')

...不,这些词不一样;D

当然,我想为每个对象创建一个对象。

最佳答案

我以前也遇到过类似的问题,并且能够通过设置环境级别变量来解决该问题。

在生产级别 Django 的上下文中,我将其添加到我的 wsgi.py 文件的顶部:

import sys
reload(sys)
sys.setdefaultencoding('utf8')

我相信我从 this answer 发现了这个技巧.

关于mysql - Django 查询不考虑特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39429503/

相关文章:

python - 是否可以将变量作为 CSS 类传递给 Django html 模板?

django - Django admin 中的微小 MCE 弹出窗口空白

encoding - 哪种可打印纸质数据存储格式具有最佳信息容量?

mysql - ado.net实体数据模型和mysql - UTF8问题

mysql - PYODBC 损坏 utf8 数据(从 MYSQL information_schema DB 读取)

mysql - SQL IF SELECT query is null then do another query

MySQL — SQL 语法错误(WHERE IN UNION)

database - 在 Django 中向表中添加列

sql - 使用 MySQL 测试存储过程

mysql - 'ED_UNASSIGNED' 在从源代码安装 mysql 期间未声明