laravel 5.2覆盖passwsord重置

时间:2016-03-08 00:55:29

标签: php laravel heroku laravel-5.2

我知道他们有类似的问题,但是我找不到类似的解决方案,我正在使用laravel 5.2身份验证:

php artisan make:auth

一切都很好,除非我需要在用户提交新密码时稍加修改 我想添加另一个动作

所以我做的第一件事是忽略文件(我认为是处理这个的文件)

/vendor/*
!/vendor/laravel

/vendor/laravel/*
!/vendor/laravel/framework/

/vendor/laravel/framework/*
!/vendor/laravel/framework/src/

/vendor/laravel/framework/src/Illuminate/*
!/vendor/laravel/framework/src/Illuminate/Foundation/

/vendor/laravel/framework/src/Illuminate/Foundation/*
!/vendor/laravel/framework/src/Illuminate/Foundation/Auth/

然后在函数resetPassword中的ResetsPasswords.php(第214行),我添加了所需的代码

protected function resetPassword($user, $password)
{
    $user->password = bcrypt($password);

    //DO WHAT I NEED TO BE DONE

    $user->save();

    Auth::guard($this->getGuard())->login($user);
}

但是没有任何事情发生,即使我放置了一个骰子(); 所以我猜这不是被调用的方法?或者当我的应用程序部署(进入heroku)时,这已被覆盖?如果是这样,我怎样才能轻松地重新创建此功能?

我已关注Laravel Reset Password documentation,但不是很清楚

1 个答案:

答案 0 :(得分:0)

这比我想象的要简单,需要在文件中编写一个同名的方法

App / Http / Controllers / Auth / PasswordController.php中的

passwordcontroller.php

protected function resetPassword($user, $password)
{
    //THE NEW CODE
}

我还需要添加

use Auth;

位于文件顶部