2016-09-05 46 views
16

Problem w Laravel 5.3.6 po przesłaniu żądania w Zapomniałem hasła.Wywołanie niezdefiniowanej metody Iluminuj Baza danych Zapytanie Konstruktor :: powiadomienie()

Błąd Szczegóły

Call to metoda niezdefiniowany Illuminate \ database \ Zapytanie \ Builder :: powiadomić()

Problem jest w pliku poniżej:

vendor \ laravel \ framework \ src \ Illuminate \ Auth \ Hasła \ PasswordBroker.php

Linia 69. Kod jest poniżej

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

Funkcja: sendResetLink

To działa dobrze w laravel 5,2 i wydaje się nie pracuje w 5.3.6 wersji. Czy spotkałeś się z tym problemem?

Odpowiedz

35

Musisz dodać cechę Illuminate\Notifications\Notifiable w modelu User.

10
  1. Dodaj cechę powiadamiającą w swoim trybie użytkownika.

    Illuminate\Notifications\Notifiable

  2. Dodaj ten w app.php:

Dla swoich dostawców:

Illuminate\Notifications\NotificationServiceProvider::class,

W aliasów:

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

  1. Pamiętaj, aby zaktualizować z ustawienia w config/mail.php pliku.
4

W moim przypadku nadal otrzymywałem błąd po wykonaniu kroków podanych w innych odpowiedziach.

BadMethodCallException: Zadzwoń do niezdefiniowanej metody Illuminate \ database \ \ Query Builder :: powiadomić()

mi brakuje

użycie obowiązkowi zgłoszenia

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