【发布时间】:2014-05-20 06:12:13
【问题描述】:
我无法让 web2py 在我的一个视图中显示图像。我在这里找到了类似的线程,但其中大多数是指缩略图和“blob”存储的图像。
这是我所拥有的:
型号
db.define_table('foto',
Field('archivo','upload'))
控制器
def mostrar():
fotos = (db.foto)
return locals()
查看
{{extend 'layout.html'}}
{{for foto in fotos:}}
<img width="123px" src="{{=URL('download', args=fotos.archivo)}}" />
{{pass}}
据我了解,以上内容可以让我看到上传到视图中的图像,但我得到了断开链接的图像,如下所示:
如果我尝试将<img 标记中的args 部分从args=fotos.archivo 更改为args=foto.archivo,我会收到<type 'exceptions.AttributeError'> 'Field' object has no attribute 'archivo' 错误。
我很确定我在这里遗漏了一些重要的概念 - 我认为,如果使用 'upload' 作为类型,您保存文件系统中的图片。但是,我在某处读到 download 函数旨在与它一起使用(文件系统存储文件,而不是 blob),并且 upload 将任何内容存储到文件系统中,只要它在 SQLFORM 中使用(与我相同) '在上面的代码中使用)。
【问题讨论】: