gpt4 book ai didi

python - 类型错误 : 'InMemoryUploadedFile' object is not subscriptable

转载 作者:行者123 更新时间:2023-11-28 19:40:27 32 4
gpt4 key购买 nike

我有一个在 Eclipse 上使用 Python2.7 和 Django1.2 的 Google Appengine 项目,它允许用户使用表单上传图片、调整图片大小并将其存储为 BLOB 字段。

我在下面指出的位置添加了一个断点,并在表达式 View 中看到“file['content']”显示值“TypeError: 'InMemoryUploadedFile' object is not subscriptable”。

当我进入或越过这条线时,它会跳转到错误处理程序。

有人可以告诉我如何解决这个问题吗?提前致谢!

if req.method == 'POST':
try:
u_form = UserInfoForm(req.POST)
if not u_form.is_valid():
return err_page(_('Error'))

u = coffeeuser.CoffeeUser.all().filter('user =', user_info).get()
u.nickname = user_info.nickname()
u.realname = req.POST.get('real_name')
u.phone = req.POST.get('phone')
u.address = req.POST.get('address')
if req.FILES.get('photo_file'):
file = req.FILES.get('photo_file')
img = images.Image(file['content']) <<<Breakpoint...Error occurs here
img.resize(width=50, height=50)
resized_img = img.execute_transforms(output_encoding=images.JPEG)
u.photo_file = db.Blob(resized_img)
u.put()
return HttpResponseRedirect('/user/')
except Exception, x:
return err_page(_('Error'))

这是发生这种情况时控制台窗口的转储。我在这里没有看到任何错误消息。

INFO 2012-05-26 07:34:21,114 dev_appserver.py:2891] “GET/favicon.ico HTTP/1.1” 404 -DEBUG 2012-05-26 07:35:15,960 dev_appserver.py:656] 将“/user/”与路径 main.py 的 CGI 调度程序匹配DEBUG 2012-05-26 07:35:16,319 dev_appserver_import_hook.py:1246] 启用 PIL:['_imaging', '_imagingcms', '_imagingft', '_imagingmath']DEBUG 2012-05-26 07:35:16,322 dev_appserver_import_hook.py:1246] 启用 django: []DEBUG 2012-05-26 07:35:16,322 dev_appserver.py:1624] 使用 env 执行 CGI:{'HTTP_REFERER': 'http://localhost:8080/user/', 'REQUEST_ID_HASH': 'C1DFD96E', 'SERVER_SOFTWARE': 'Development/1.0', 'SCRIPT_NAME': '', 'REQUEST_METHOD': 'POST' , 'PATH_INFO': '/user/', 'HTTP_ORIGIN': 'http://localhost:8080', 'SERVER_PROTOCOL': 'HTTP/1.0', 'QUERY_STRING': '', 'CONTENT_LENGTH': '927730', 'HTTP_ACCEPT_CHARSET': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3', 'APPENGINE_RUNTIME': 'python27', 'TZ': 'UTC', 'HTTP_COOKIE': 'RememberMe=YPD/ztDwsHCs3J9cPG5c+g==; dev_appserver_login="test@example.com:False:185804764220139124118"; sessionid=2b5fc41e4c0332b1161a002ae12e616b; csrftoken=05e24dcb62093082dc1fafe66c0a6dbb', 'SERVER_NAME': 'localhost', 'REMOTE_ADDR': '127.0.0.1', 'SDK_VERSION': '1.6.5', 'PATH_TRANSLATED': 'C:\_dev\eclipse-work\gae\pydev5\src\main.py', 'SERVER_PORT': '8080', 'CONTENT_TYPE': 'multipart/form-data; boundary=-----WebKitFormBoundaryC4BfGc98AzYhJTQD', 'CURRENT_VERSION_ID': '1.1', 'USER_ORGANIZATION': '', 'USER_ID': '185804764220139124118', 'HTTP_USER_AGENT': 'Mozilla/5.0 (Windows NT 6.1; Wit195) Apple5.0 (KHTML,如 Gecko)Chrome/18.0.1025.168 Safari/535.19', 'HTTP_HOST': 'localhost:8080', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_CACHE_CONTROL': 'max-age=0', 'USER_EMAIL ': 'test@example.com', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8', 'APPLICATION_ID' : 'dev~quizoncloud', 'GATEWAY_INTERFACE': 'CGI/1.1', 'HTTP_ACCEPT_LANGUAGE': 'en-US,en;q=0.8', 'AUTH_DOMAIN': 'gmail.com', '_AH_ENCODED_SCRIPT_NAME': '/user/'}DEBUG 2012-05-26 07:36:19,815 datastore_stub_index.py:181] 无需更新 index.yaml

最佳答案

file 不是字典,因此您不能那样进行键查找。也许你的意思是 file.content

尽管我认为该对象也没有 content 属性 - 请参阅 the documentation对于 UploadedFile 对象。也许你的意思是 file.read()

(此外,不要调用您的变量 file - 这会隐藏内置的 file 函数)。

关于python - 类型错误 : 'InMemoryUploadedFile' object is not subscriptable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10767200/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com