【问题标题】:web2py: crud form to edit users resets passwordweb2py:编辑用户重置密码的 crud 表单
【发布时间】:2012-02-15 23:27:33
【问题描述】:

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

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

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

【问题讨论】:

    标签: web2py


    【解决方案1】:

    如果变量为空或无效,您能否从 form.vars 中删除该变量?由于 web2py 集成了如此多的身份验证内容,因此我从未真正搞砸过密码字段的内容,但这可能会奏效。

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

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

    【讨论】:

      猜你喜欢
      • 2015-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-13
      • 2022-10-05
      • 2016-05-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多