如何将SQLFORM.smartgrid上的行过滤到表中的某个字段值

时间:2016-04-15 20:01:14

标签: web2py

我的db.py中有一个表,并希望使用smartgrid为其添加编辑/删除/视图选项。我需要过滤记录并仅显示当前登录用户上传的记录。我的表中有一个名为uploaded_by的字段,其中包含上传某个项目的人的用户名。

1 个答案:

答案 0 :(得分:0)

如果您只需要在网格中显示单个表,则应使用grid而不是smartgrid,在这种情况下,第一个参数可以是查询而不是表:

grid = SQLFORM.grid(db.mytable.uploaded_by == some_id, ...)

如果由于某种原因您确实需要smartgrid,则可以使用constraints参数为特定表格指定过滤器:

grid = SQLFORM.smartgrid(db.mytable,
                         constraints={'mytable': db.mytable.uploaded_by == some_id}, ...)