问题
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:
Add the Notifiable trait in your User mode.
Illuminate\Notifications\Notifiable
Add this in your app.php:
For your providers:
Illuminate\Notifications\NotificationServiceProvider::class,
In the aliases:
'Notification' => Illuminate\Support\Facades\Notification::class,
- 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