Call to undefined method Illuminate\Database\Query\Builder::notify()

二次信任 提交于 2019-12-10 00:40:24

问题


Issue in Laravel 5.3.6 when submitted request in Forgot Password.

Error Details

Call to undefined method Illuminate\Database\Query\Builder::notify()

Issue is in below file:

vendor\laravel\framework\src\Illuminate\Auth\Passwords\PasswordBroker.php

Line 69. Code is below

$user->sendPasswordResetNotification(
    $this->tokens->create($user)
);

Function: sendResetLink

It was working fine in Laravel 5.2 and seems not working in 5.3.6 version. Have you faced this issue?


回答1:


You must add Illuminate\Notifications\Notifiable trait in User model.




回答2:


  1. Add the Notifiable trait in your User mode.

    Illuminate\Notifications\Notifiable

  2. Add this in your app.php:

For your providers:

Illuminate\Notifications\NotificationServiceProvider::class,

In the aliases:

'Notification' => Illuminate\Support\Facades\Notification::class,

  1. Remember to update your from settings in the config/mail.php file.



回答3:


In my case, I was still getting error after following steps given in other answers.

BadMethodCallException: Call to undefined method Illuminate\Database\Query\Builder::notify()

I was missing

use Notifiable

...
use Illuminate\Notifications\Notifiable;
class User extends Model
{
     use SoftDeletes, Notifiable;
     ...


来源:https://stackoverflow.com/questions/39337964/call-to-undefined-method-illuminate-database-query-buildernotify

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!