我在laravel 5.1工作,我的更新配置文件正在运行,但不会加密,现在不能正常工作。 当我尝试更新用户表时,还会在password_confirmation字段中导致数据库发生冲突。我不明白。 在表单中说成功,但数据库不更新任何
代码
public function updatePassword() {
$passwordData = Input::except('_token');
$validation = Validator::make($passwordData, User::$passwordData);
if ($validation->passes()) {
array_forget($passwordData,'password_confirmation');
User::where(array(
'password' => Hash::make(Input::get('password'))
));
Session::flash('password', 'Perfil editado com sucesso');
return Redirect::to('backend/perfil/password');
} else {
return Redirect::to('backend/perfil/password')->withInput()->withErrors($validation);
}
}
用户
public static $passwordData = array(
'password' => 'required|confirmed',
'password_confirmation' => 'required'
);
答案 0 :(得分:1)
按照这个简单的步骤去掉任何东西
第1步:从表单中获取密码
_group.user_set.filter(posts__created_time__gt=from_date, posts__created_time__lt=to_date)
第2步:验证密码
$PasswordData = Input::all();
第3步:在Validator::extend('pwdvalidation', function($field, $value, $parameters) {
return Hash::check($value, Auth::user()->password);
});
模型
User
public static $rulespwd = array('OldPassword' => 'required|pwdvalidation',
'NewPassword' => 'required|confirmed|alphaNum|min:5|max:10',
'NewPassword_confirmation' => 'required',
);
您应根据需要定义自己的规则
第4步:如果规则已通过,则更新else将错误消息发送到您的视图
Note :