我有波斯数据和utf8_general_ci
集合的表格,并且使用php程序我将数据插入数据库。
现在我有了python -django的新程序,并希望查看数据,但所有数据都是错误的视图,如پست
为什么?我能做些什么来解决这个问题?
ps:当我使用python插入新数据时,所有内容都是正确的并且可以正确查看。
答案 0 :(得分:2)
如果您遇到Django / MySQL项目中的unicode项目显示为问号的问题,可以在这个django-users线程中找到可能的问题和解决方案:
可能的问题是你的MySQL编码设置为latin1,而不是utf8。您可以通过以下方式查看:
mysqld --verbose --help | grep character-set
您可能会看到:
character-set-server latin1
你希望这是uft8。要修改它,请编辑my.conf文件(ubuntu上的/etc/mysql/my.conf),将以下行添加到相应的部分:
[client]
...
default-character-set = utf8
[mysqld]
...
character-set-server=utf8
collation-server=utf8_unicode_ci
init_connect='set collation_connection = utf8_unicode_ci;'
现在重启mysql:
sudo /etc/init.d/mysql restart
并更改现有表以使用utf8编码:
mysql your_db_name
alter table your_table_name转换为字符集utf8;
那应该这样做。
答案 1 :(得分:0)
你能检查一下html页面的charset
是什么吗?它应该像<meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/>