Python 如何在GAE text.Property字段中将文本存储为UTF-8?
我知道GAE默认将Python 如何在GAE text.Property字段中将文本存储为UTF-8?,python,google-app-engine,encoding,google-cloud-datastore,Python,Google App Engine,Encoding,Google Cloud Datastore,我知道GAE默认将db.TextProperty存储为ASCII。如何在文本字段中存储utf编码的文本?我尝试了db.Text(txt,encoding='utf_8'),但无法让它工作 使用交互式控制台没有回溯,只是一个普通的请求失败了。但是不使用“Ü”来传递文本是有效的。所以我确信这是一个编码问题。有人能帮忙吗 class Greeting(db.Model): lang_category = db.StringProperty(choices=("de_DE", "en_US",
db.TextProperty
存储为ASCII。如何在文本字段中存储utf编码的文本?我尝试了db.Text(txt,encoding='utf_8')
,但无法让它工作
使用交互式控制台没有回溯,只是一个普通的请求失败了。但是不使用“Ü”来传递文本是有效的。所以我确信这是一个编码问题。有人能帮忙吗
class Greeting(db.Model):
lang_category = db.StringProperty(choices=("de_DE", "en_US", "pt_PT"),
required=True)
greet_txt = db.TextProperty(required=True)
def put_greet(lang,txt):
g = Greeting(lang_category = lang,
greet_txt = db.Text(txt, encoding='utf_8'))
g.put()
put_greet("de_DE","Voller Überzeugung.")
试一试
def put_greet(lang,txt):
g = Greeting(lang_category = lang,
greet_txt = db.Text(txt))
g.put()
及
另外,我更喜欢使用ndb(google.appengine.ext.ndb)模块而不是db。以前尝试过这个,但在interactive命令中也不起作用。当通过脚本运行时,它确实可以工作。它在开发服务器中不起作用,但编码错误似乎来自web界面,而不是db模块。
put_greet("de_DE", u"Voller Überzeugung.")