laravel unique验证、确认密码confirmed验证以及密码修(4)
Models\Manager
protected $table = 'managers';
protected $fillable = ['name', 'password'];
/*public static $rules = [
'name' => 'required|unique:managers',
'password' => 'required|confirmed',
'password_confirmation' => 'required|same:password'
];*/
public static function rules ($id = null, $manager = null)
{
if (empty($id))
{
$rules = [
'name' => 'required|unique:managers',
'password' => 'required|confirmed',
'password_confirmation' => 'required|same:password'
];
} else
{
$rules = [
'name' => [
'required',
Rule::unique('managers')->ignore($id),
],
'old_password' => [
'required',
function($attribute, $value, $fail) use ($manager)
{
if (!Hash::check($value, $manager->password))
{
return $fail(__('tyvalidation.old_password'));
}
},
],
'password' => 'required|confirmed',
'password_confirmation' => 'required|same:password'
];
}
return $rules;
}
public static function error_message()
{
return [
'name.required' => __('tyvalidation.name'),
'name.unique' => __('tyvalidation.unique'),
'password.required' => __('tyvalidation.password'),
'password.confirmed' => __('tyvalidation.confirmed'),
];
}
public function setPasswordAttribute($value)
{
$this->attributes['password'] = Hash::make($value);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持黑区网络。
