0
一旦用户登录到我的应用程序我想让他们更改密码的可能性。我创建了三个输入字段(password_new,password_new_confirmation,password_old)。在我的表单请求我有以下的规则,但它不工作:检查密码输入是否与存储的密码相匹配,使用Laravel 5.1时
$rules['password_new'] = 'required|confirmed|min:6';
$rules['password_old'] = 'required|exists:users,password,email,'. Auth::user()->email;
这也许是因为密码输入散列的地方作为存储的密码是在散列格式?
所以我想也许使用AUTH ::验证门面如下:
$valid = Auth::validate(['email' => Auth::user()->email, 'password' => Input::get('password_old')]);
if (! $valid)
{
// add error to validator
}
我的问题是如何将错误添加到校验器实例我的表单请求里面在此改变它 - 以下是验证程序实例?
protected function getValidatorInstance()
{
$factory = $this->container->make(ValidationFactory::class);
if (method_exists($this, 'validator')) {
return $this->container->call([$this, 'validator'], compact('factory'));
}
return $factory->make(
$this->all(), $this->container->call([$this, 'rules']), $this->messages(), $this->attributes()
);
}
当你如下因此使用下面我怎么在此改变上面的验证实例手动创建您可以验证挂钩后应用验证程序:
3210
我的问题是如何覆盖验证器实例,以便我可以向该字段添加错误消息。看到我更新的帖子。 – adam78
您是否想为'password_old'字段创建自定义错误消息? – smartrahat
是的。我需要一个自定义验证来检查password_old是否与存储在数据库中的密码匹配。 – adam78