1
class UploadHandler(blobstore_handlers.BlobstoreUploadHandler):
    def post(self):
        reseller_id = self.request.get('reseller_id')
        upload_files = self.request.get('logo_img')
        if upload_files:
            blob_info = upload_files[0]
            key = blob_info.key()

我在线路上遇到错误

key = blob_info.key()

错误:

 AttributeError: 'str' object has no attribute 'key

问题是文件上传正确,我可以在 GAE blob 查看器中看到它。我从这里的上传示例中复制了这段代码:

https://developers.google.com/appengine/docs/python/blobstore/overview#Complete_Sample_App

我不知道为什么我没有通过使用 blob_info.key() 获得键值,任何指针都将受到欢迎。

4

1 回答 1

2

请注意,在示例中他们这样做:

upload_files = self.get_uploads('file')  # 'file' is file upload field in the form

在您的示例中,upload_files 是用户为 logo_img 字段设置的值,它是一个字符串。

我想 logo_img 字段是用户正在上传的文件,所以你需要这样做

upload_files = self.get_uploads('logo_img')
于 2012-06-21T22:31:57.043 回答