У меня есть столбец в базе данных с именем PASS
который хранит пароль. Для хеширования необходимо пройти через метод _setPassword. но по умолчанию он будет проходить через этот метод, только если имя столбца password
как мне сделать PASS
пройти через это _setPassword
метод как password
?
<?php
namespace App\Model\Entity;
use Cake\ORM\Entity;
use Cake\Auth\DefaultPasswordHasher;
/**
* DefaultUser Entity.
*/
class DefaultUser extends Entity
{
/**
* Fields that can be mass assigned using newEntity() or patchEntity().
*
* @var array
*/
protected $_accessible = [
'first_name' => true,
'last_name' => true,
'email' => true,
'PASS' => true,
'active' => true,
];protected function _setPassword($password) {
$hasher = new DefaultPasswordHasher();
return $hasher -> hash($password);
}
}
Примечание: это код cakephp 3.0.
Используйте правильное имя для установщика сущности:
protected function _setPASS($password) {
$hasher = new DefaultPasswordHasher();
return $hasher->hash($password);
}
Других решений пока нет …