django + mysql + UTF-8 - 不显示字符

时间:2009-12-18 13:04:13

标签: python django unicode

我有两个,django和mysql设置为使用UTF-8。 我的base.html设置了utf-8。

我的数据库上的行:


+----+--------+------------------------------------------------------------------+-----------------------------+-----------------------------+---------------------+
| id | psn_id | name                                                             | publisher                   | developer                   | release_date        |
+----+--------+------------------------------------------------------------------+-----------------------------+-----------------------------+---------------------+
|  1 | 10945- | まいにちいっしょ | Sony Computer Entertainment | Sony Computer Entertainment | 2006-11-11 00:00:00 |
+----+--------+------------------------------------------------------------------+-----------------------------+-----------------------------+---------------------+

生成的源代码如下:

まいにちいっしょ

这是显示的wat:/

为什么他们没有在这个数据库中显示字符?

3 个答案:

答案 0 :(得分:3)

当源代码被置于一个空的HTML文档中时,在Google Chrome,IE和Firefox中对我来说就像这样:

  

まいにちいっしょ

这似乎是你想要的。

我唯一的想法是,这不是真正的源代码,而且你实际上得到了如下所示的源代码:

まいにちいっしょ

在这种情况下,你是HTML编码的东西,已经是HTML编码的。

如果情况并非如此,那我就不知道了。

我用来测试它的来源是:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
  <head> 
    <title>Foo</title> 
  </head> 
  <body> 
   <p>&#12414;&#12356;&#12395;&#12385;&#12356;&#12387;&#12375;&#12423;</p>
  </body> 
</html>

答案 1 :(得分:0)

正如Dominic所说,生成的HTML源代码是正确的(这些是你的日文字符翻译成HTML实体),但我们不确定,如果你看到在页面中呈现相同的代码(在这种情况下,你可能已将content-type设置为“text/plain”而不是“text/html” - 您是否在相应的view.py方法中使用render_to_response()HttpResponse()?),或者您的日语被正确呈现,但您只是不喜欢源代码中的实体。

由于我们不知道您的Django设置以及如何呈现和返回页面,因此很难为您提供解决方案。

答案 2 :(得分:0)

问题是自动逃生django功能...... 我的源代码就像Dominic粘贴的那样:

&#12414;&#12356;&#12395;&#12385;&#12356;&#12387;&#12375;&#12423;

我简单地将标签放在我所知道的地方,可能是一些差异:

{% autoescape off %}
xxxxx
{% endautoescape %}

一切都像魅力......:D

比你们所有人

http://docs.djangoproject.com/en/dev/ref/templates/builtins/#autoescape