web2py 从 reqeust.vars 获取行对象

web2py get row object from reqeust.vars

我有以下代码段:

for row in rows:            
     FORM(INPUT(_type='submit',_value=row.Name),  _action=URL('Review',args=[course_id,year],vars=dict(row=row)), _method='post')

其中行是行对象。 但如果我这样做:

request.vars.row 

来自调用的 Review 函数 它是 'str' 类型,带有一些像

这样的字符串
    <Row :{'Atribute Name',......}>

如何将行对象传递给该函数?

作为 args 传递会导致同样的问题

您不能将整个字典作为查询字符串中单个变量的值传递。鉴于 Row 对象是查询字符串中的唯一项,只需将其转换为字典并将其作为查询字符串传递:

URL(..., vars=row.as_dict())

然后在 Review 函数中,您将访问单个字段值作为 request.vars.field1,等等