-1

我遵循了本教程: https ://developers.google.com/appengine/docs/python/images/usingimages

它正在杀死我......我设法让它工作......但是我无法让它满足我的需求......问题是我想使用 json 序列化我的模型......

  1. 为什么他们将 avatar = db.BlobProperty() 放入模型中而不使用对该 blob 的引用?...有什么理由吗?

  2. 我找不到一个像样的教程,关于如何在 Blob 中存储图像,然后将其位置/键/引用存储在模型中。有什么建议吗?使用下面的代码......我正在做教程中的确切内容......我如何获得对该图片的引用,以及如何存储它???

    pic = self.request.get('img')
    pic = db.Blob(pic)
    

我设法做的是将实体的 id 存储在 JSON 中,并使用该 id 来检索和显示图片。我用以下代码显示图片:

class Image(webapp2.RequestHandler):
def get(self):
    #product = db.get(self.request.get('img_id'))

    product = MenuProduct.by_id(int(self.request.get('img_id')))
    if product.small_pic:
        self.response.headers['Content-Type'] = 'image/png'
        self.response.out.write(product.small_pic)
    else:
        self.error(404)
  1. 我猜使用这种方法所有的效率都会下降......对吗?

抱歉,我的帖子听起来很乱……但我有点厌倦了与这个主题相关的“很棒”的糟糕文档。

4

1 回答 1

1

您应该使用单独的Blobstore服务并将BlobKey存储在模型中,而不是将 Blob 存储为 BlobProperty 。

于 2013-04-13T19:37:24.097 回答