web2py:用于编辑用户的crud表单重置密码

时间:2012-02-15 23:27:33

标签: web2py

我有一个crud表单,因此管理员可以编辑用户。管理员需要能够在必要时更改密码。我正在使用:

crud.update(db.auth_user, user_id, deletable=False)

创建表单,如果输入密码,它可以正常工作。但是如果我不想更改密码,它会重置密码而用户无法登录。看起来密码字段正在使用加密版本进行更新并导致其重置。如何防止这种情况发生?

1 个答案:

答案 0 :(得分:0)

如果变量为空或无效,你可以从form.vars中删除它吗?由于web2py集成了很多auth资源,我从来没有真正搞过密码字段的东西,但这可能有用。

您可以使用crud.update(..., onvalidation=somefunction)并在密码字段中检查有效值,如果找不到,del form.vars.password?或者将form.vars.password设置为None?

在表单被接受(验证)之后,但在数据库中输入/更新值之前,将发生失效。