Web2py SmartGrid按用户显示数据

问题描述

我想用sqlFORM.grid创建一个显示用户提交内容的控制器。

我有两个表:一个用于教师(用户),另一个用于学生。老师提交学生的信息。如何使用网格显示每个用户提交的学生?

解决方法

使用智能网格,即SQLFORM.smartgrid()代替普通网格,并为教师表添加数据归档的学生作为list:string,以便您可以添加提交给教师ID的多个学生姓名。

,

您可以将Common Filter应用于表以限制显示的内容。如果只想显示用户创建的记录,则过滤器可能如下所示:

common_filter = lambda query: db.blog_post.created_by == auth.user_id