Как получить имя файла BlobStore из BlobReferenceProperty? - PullRequest
1 голос
/ 22 января 2011

Мне трудно понять, как сделать что-то, что должно быть простым.

class Spam(db.Model):
    egg = blobstore.BlobReferenceProperty(blobstore.BlobKey, required=False)


class UploadHandler(blobstore_handlers.BlobstoreUploadHandler):
    def post(self):
        upload_files = self.get_uploads('file')
        blob_info = upload_files[0]
        spam = models.Spam(egg=blob_info.key())
        spam.put()

Пока все хорошо, верно?Теперь я хочу отобразить файл.

egg_blob = blobstore.BlobInfo.get(spam.egg) #error below is thrown here

self.redirect('/serve/%s' % egg_blob.key())


BadArgumentError: Expected str or BlobKey; received <google.appengine.ext.blobstore.blobstore.BlobInfo object at 0x3ed8970> (a BlobInfo)

Что мне не хватает?spam.egg, это BlobKey.

1 Ответ

2 голосов
/ 22 января 2011

Нет, я думаю, что egg_blob (он же spam.egg) является BlobInfo.Если у вас есть spam.egg, я не думаю, что вам нужно возвращаться в интернет-магазин, не так ли?Вы пробовали просто использовать ссылку на spam.egg?т.е. сделать

self.redirect('/serve/%s' % spam.egg.key())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...