CakePHP的Auth组件需要存在用户名字段才能在保存时将密码字段转换为哈希值。显然,即使我将以下内容放在beforeFilter()
:
$this->Auth->fields = array('username' => 'email', 'password' => 'password');
在将密码插入数据库之前,它不会对密码进行加密。
所以我的问题是,假设这应该发生,加密密码的最佳方法是什么?或者,我在某个地方犯了一个简单的错误吗?
提前感谢您的任何帮助!
这是users_controller.php中的before过滤器:
function beforeFilter() {
$this->Auth->fields = array('username' => 'email', 'password' => 'password');
}
app_controller.php:
var $components = array('Auth');
答案 0 :(得分:3)
哎呀,我也复制了$this->Auth->fields = array('username' => 'email', 'password' => 'password');
中的AppController
行,这似乎导致了问题。对此感到抱歉,感谢您在此处发帖仔细检查提示:)