簡體   English   中英

在CakePHP的Auth組件中使用電子郵件代替用戶名

[英]Using email instead of username in CakePHP's Auth Component

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');

糟糕,我已復制了$this->Auth->fields = array('username' => 'email', 'password' => 'password'); AppController中也是如此,這似乎是導致問題的原因。 對此感到抱歉,感謝您通過在此處發帖進行仔細檢查的提示:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM