【发布时间】:2020-02-23 20:26:25
【问题描述】:
我创建了一个密码验证,但是当我插入一个新用户时,这个验证是在加密密码后触发的……
我使用的是 Argon2Id,所以密码将超过 30 个字符...
我的验证器(config/validator/validation.yaml):
App\Entity\Utilisateur:
properties:
mdp:
- Length:
min: 6
max: 30
minMessage: 'Votre mot de passe doit faire au moins {{ limit }} caractères'
maxMessage: 'Votre mot de passe doit faire moins de {{ limit }} caractères'
Utilisateur.php 中的 setMdp :
public function setMdp(string $mdp): self
{
$this->mdp = password_hash($mdp, PASSWORD_ARGON2ID);
return $this;
}
所以,当我插入新用户时,我收到 Symfony 验证器的错误,告诉我密码超过 30 个字符。
如何在加密密码之前触发此验证器?
谢谢!
【问题讨论】:
标签: php symfony validation encryption passwords