Blobkey来自blobstore谷歌应用程序引擎python

时间:2011-12-13 07:13:42

标签: python google-app-engine blobstore

如何从blob商店返回blob密钥?然后返回图片网址?

示例代码:

class Next(webapp.RequestHandler):
    def get(self):
        userTable_name=self.request.get('userTable_name')

        data  = db.GqlQuery("SELECT * "
                                "FROM userTable "
                                "WHERE ANCESTOR IS :1 "
                                "ORDER BY date DESC LIMIT 10",
                                userTable_key(userTable_name))

        self.response.headers['Content-Type'] = 'text/plain'


        for user in data:
            blobURL = get_serving_url(user.imageblob.key(), size=None, crop=False)
            self.response.out.write(blobURL)

我正在使用GqlQuery返回一组Blob(即user.imageblob),对于每个blob,我需要确定BlobKey。据我所知,“user.imageblob.key()”不返回blobkey ......?

1 个答案:

答案 0 :(得分:0)

解决了!事实证明,我很困惑“将数据添加到数据存储区作为blob”vs vs将图像添加到blobstore。

  

BlobReferenceProperty引用上传和存储的对象   blobstore,而BlobProperty直接在blob中存储blob数据   数据存储。见:How to use get_serving_url in appengine?

因此,get_serving_url()user.imageblob.key()错误地指向数据存储区而不是blobstore。

有关向blobstore添加图像的示例,请参阅:http://code.google.com/appengine/docs/python/blobstore/overview.html