2016-05-21 22 views

回答

1

的web2py的驗證系統包括一個單獨的Auth.change_password()方法具體地用於改變密碼(而不是包括只是一個單一密碼字段,它也包括用於舊密碼字段和確認新密碼)。在腳手架應用程序中,可以通過/ default/user/change_password進行訪問,它作爲菜單選項包含在auth.navbar()中。

如果您想要一個包含配置文件和密碼更改功能的表單,您必須編寫自己的自定義操作。您可以通過SQLFORM(db.auth_user)簡單地創建一個包含所有用戶字段(包括密碼字段)的表單。但是,如果您想要求並驗證舊密碼並確認新密碼,則需要自定義表單並自行編寫驗證邏輯。

+0

謝謝,安東尼。根據站點的設計,用戶通常會發現,在配置文件表單中查找密碼更改功能要比查找單獨的菜單項更加直觀,這意味着「Auth.change_password()」不是最佳選項。從開發人員的角度來看,'auth.profile()'形式肯定比'SQLFORM(db.auth_user)'方便,但我可以理解這種情緒是否會增加'auth.profile( )'通過提供一個選項來添加一個密碼字段。 – Boa

+0

我不反對。如果要將該選項添加到'auth.profile'功能,則可能會接受拉取請求。 – Anthony

+0

謝謝 - 我可能會繼續這樣做。 – Boa

相關問題