按照图像博客示例将 web2py 中的图像从默认控制器上传到数据库

Upload image in web2py to database from default controller following image blog example

我正在关注 this example 以尝试实现一种将图像从我在 web2py 中的应用程序的默认页面上传到数据库的方法。我完成了整个过程,现在可以在默认页面上查看通过 appadmin 控制器和函数 /insert/db/image

上传的图像

我想要的是在默认页面上有一个小部分来上传图像,而不是必须转到 /appadmin/insert/db/image

中的其他页面

我如何在默认控制器和视图中实现它?谢谢

您只需将 SQLFORM 添加到索引页即可:

def index():
    [your existing code]
    form = SQLFORM(db.image).process()
    return dict(..., form=form)

在 /views/default/index.html 中,在您想要表格的任何地方添加:

{{=form}}

或者,您可以使用网格,它提供用于列出、创建和编辑数据库记录的完整界面。您可以将上面的 form 行替换为:

grid = SQLFORM.grid(db.image)
return dict(..., grid=grid)

和:

{{=grid}}

请注意,默认情况下,所有网格 URL 均已签名,因此对于 create/edit/delete 记录,用户必须登录(要禁用此保护,请设置 user_signature=False)。

forms chapter.

中已涵盖所有内容