Я использую laravel 4.2. И у меня есть эта странная ошибка.Laravel странная ошибка: Яркая модель меняется на экземпляр класса Builder
Все, что я пытаюсь сделать, это передать этот объект User
(Eloquent
модели) к методу scopeSendTo
из EmailVerification
модели; и наткнулся на эту странную ошибку, которую я не могу понять.
Вот мой код:
class EmailVerification extends Eloquent
{
...
public function scopeSendTo(User $user, $type)
{
$token = Str::slug(microtime(true).Hash::make(Str::random(20)));
$verification = new EmailVerification([
'token' => $token,
'type' => $type,
]);
$user->verifications()->save($verification);
Mail::send('emails.verification', ['verification' => $verification], function ($message) {
$name = $user->profile ? $user->profile->first_name : '';
$message->to($user->email, $name)->subject('Account Verification');
});
...
}
...
}
Я пытаюсь использовать этот метод, как это:
$user = User::find($userId);
EmailVerification::sendTo($user, 'signup');
Но он бросает эту ошибку:
Я даже попытался сделать dd(get_class($user))
, который подтверждает, что переданный объект является n User
объект и строго не экземпляр Illuminate\Database\Eloquent\Builder
; но я не могу понять, в чем проблема.