【问题标题】:How do I save a text string into datastore as blob type in Google App Engine?如何在 Google App Engine 中将文本字符串作为 blob 类型保存到数据存储区?
【发布时间】:2012-12-01 04:10:42
【问题描述】:

让我们直接进入sn-p:

class RequestHandler(webapp.RequestHandler):
  def get(self):
    data = self.request.get('test')
    blob = db.Blob(data) # what should I do here?

    """ Save blob into datastore """

    self.response.out.write("Success")

我正在尝试将“数据”转换为“blob”类型,然后将其保存到数据存储中。我看到official sample 使用了 db.Blob() 但它对我不起作用(发生服务器错误并且没有显示“成功”)。我应该怎么做才能满足我的需求?感谢您的宝贵时间!

【问题讨论】:

  • @voscause 我忘记了日志...它说“Blob() 参数应该是 str 实例,而不是 unicode”,我现在知道出了什么问题。感谢您的提示:P

标签: python google-app-engine blob datastore


【解决方案1】:

日志输出“TypeError:Blob() 参数应该是 str 实例,而不是 unicode”。我再次谷歌搜索,发现通常我们应该将 unicode 字符串存储在数据存储中作为 db.TextProperty,而不是 db.BlobProperty。所以更正应该是:

class RequestHandler(webapp.RequestHandler):
  def get(self):
  text = self.request.get('test')
  """ Don't convert text to blob """
  """ Save text into datastore as db.TextProperty """

  self.response.out.write("Success")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    • 2011-02-16
    • 2013-12-03
    • 1970-01-01
    相关资源
    最近更新 更多