Laravel PasswordBroker :: createToken()必须实现接口

时间:2020-11-10 17:41:25

标签: php laravel

我正在尝试将Laravel PasswordBroker类用于createToken,而不发送电子邮件。但是当我调用createToken方法时,它给了我这个错误。

Argument 1 passed to Illuminate\Auth\Passwords\PasswordBroker::createToken() must implement interface Illuminate\Contracts\Auth\CanResetPassword, instance of stdClass given..

如何在控制器中调用createToken方法?到目前为止,我正在使用下面的代码,但这给了我错误。

app('auth.password.broker')->createToken($customer);

1 个答案:

答案 0 :(得分:0)

在这种情况下,您给定的对象$customer必须具有CanResetPassword的实现,该实现可以通过在Illuminate\Foundation\Auth\User对象上扩展$customer来实现。如果您的$customer对象也称为User,我强烈建议给它一个别名。

use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable {}

希望这可以帮助您解决问题。