如何在重定向到web2py中的下一个URL之前调用函数?

时间:2016-02-19 00:04:07

标签: python html crud web2py

我已将表格定义如下:

form = crud.update(db.table, table_id, next=URL('nextpage'))
crud.settings.update_onaccept = myfunction()

我需要在提交表单后再次调用myfunction(),但是在加载下一页之前。 我可以设置一个可以在提交表单后调用函数的crud设置吗?

1 个答案:

答案 0 :(得分:0)

你不应该这样做:

crud.settings.update_onaccept = myfunction()

当你在那里调用myfunction时,当你真的只想将它注册为稍后使用的回调时。相反,使用:

crud.settings.update_onaccept.tablename.append(myfunction)

现在,在接受并应用更新后,将调用myfunction,并将Crud Form对象传递给它。

注意,如果只有一个回调,你也可以这样做:

crud.settings.update_onaccept.tablename = myfunction

因为不需要附加到现有的回调列表。

最后,如果你想对所有数据库表使用相同的回调(或者只对单个表使用Crud),你可以这样做:

crud.settings.update_onaccept = myfunction