我的谷歌应用引擎应用程序存在严重问题。到目前为止,我存储在数据库中的任何内容都是英文的。现在我必须用希腊语存储一些东西,当我尝试稍后从数据库中检索它时,我有一个u'\u039a\u03b1\u03b9\u03c1\u03cc\u03c2'
而不是字符串。
到现在为止,当我想在html上添加一些内容时,我使用了以下内容
error = unicode(error,"utf-8")
但是在我将数据存储到数据之前,我尝试将其正确放置,但没有帮助
修改
我只是看到一些让我更加困惑的事情。我从html表单中获取这些字符串。我有许多投入,希腊的作品很棒。但是那些产生问题的是"select"
标签,我会得到所有选择的列表。其他输入以希腊语存储在数据库中,没有任何问题。
编辑2:
我想从评论中编辑一些内容。我犯了一个错误。如果我打印变量,我可以看到字符串没有问题。但是如果我self.response.out.write(thestring)
,我会看到%CE%9A%CE%BF%CE%B9%CE%BD%CF%89%CE%BD%CE%B9%CE%BA%CE%AC
答案 0 :(得分:0)
我可以在谷歌应用引擎中存储和检索希腊语,但在我这样做之前它对我不起作用:
name = unicode(form.name.data, "utf8")
我可以在Google应用引擎中存储希腊语,所以为什么不这样做呢。说起来容易做起来难,但是到处使用utf-8然后它就会起作用。您将需要像您这样的网页代码:
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
您还需要指示您的输入表单将其编码为utf-8,但我不会使用appengine进行编码,但我仍然可以存储希腊语。我只是通过实验找到了这个,如果你想要理论,你可以阅读these slides。