通常 Web2py 错误很容易理解,但这让我很困惑。
我使用了 web2py 食谱中的一个示例来制作上传图像的缩略图。它会生成一个缩略图,但我无法检索该文件。我收到以下错误:
<type 'exceptions.TypeError'>(Can't retrieve auth_user.thumb.a7433c1cbe652f44.jpg)
该文件位于上传目录中,可以使用图像查看器查看,但我无法从数据库中调用它。从数据库管理员或通过视图。
这是我单击数据库管理员中的链接时的回溯。
Traceback (most recent call last):
File "/home/www-data/web2py/gluon/restricted.py", line 212, in restricted
exec ccode in environment
File "/home/www-data/web2py/applications/Urban_Gatherer/controllers/appadmin.py", line 464, in <module>
File "/home/www-data/web2py/gluon/globals.py", line 194, in <lambda>
self._caller = lambda f: f()
File "/home/www-data/web2py/applications/Urban_Gatherer/controllers/appadmin.py", line 140, in download
return response.download(request, db)
File "/home/www-data/web2py/gluon/globals.py", line 407, in download
(filename, stream) = field.retrieve(name,nameonly=True)
File "/home/www-data/web2py/gluon/dal.py", line 9332, in retrieve
raise TypeError('Can\'t retrieve %s' % name)
TypeError: Can't retrieve auth_user.thumb.a7433c1cbe652f44.jpg
我不确定出了什么问题。
这是我的控制器
def make_thumb(table, image_id, size=(250, 250)):
import os
from PIL import Image
this_image = table(image_id)
im = Image.open(os.path.join(request.folder, 'uploads', this_image.avatar))
im.thumbnail(size, Image.ANTIALIAS)
thumb= 'auth_user.thumb.%s.jpg' % this_image.avatar.split('.')[2]
im.save(os.path.join(request.folder, 'uploads', thumb), 'jpeg')
this_image.update_record(thumb=thumb
)
我以为我在切片中丢失了一些东西,但我改为 3,我似乎仍然错过了 b16 部分。不知道为什么?