这是我的代码
use Illuminate\Foundation\Auth\ResetsPasswords;
class PasswordController extends Controller {
use ResetsPasswords;
public function postReset(Request $request){
// do some stuff
// ...
return parent::postReset($request); // <-here is the problem
}
方法
postReset
存在于ResetsPasswords
中,但我编写的代码是在Controller
类中寻找此方法。
有什么想法吗?
use Illuminate\Foundation\Auth\ResetsPasswords;
class PasswordController extends Controller
{
use ResetsPasswords {
ResetsPassword::postReset as traitPostReset;
}
public function postReset(Request $request)
{
// Do some stuff
// Return
return $this->traitPostReset($request);
}
}
parent::postReset($request)
之所以会出现致命错误,是因为它的父类Controller
没有postReset
方法。在这种情况下,即使该特征具有 postReset()
方法的实现,也不会被视为父特征。
要解决此问题,您可以为其指定不同的名称:
class PasswordController extends Controller
{
use ResetsPasswords;
public function postResetPassword(Request $request) // <- giving it a different name
{
// do some stuff
// ...
return $this->postReset($request); // and calling ResetsPasswords::postReset
}