Laravel пользовательская проверка не создает объект Eloquent - PullRequest
0 голосов
/ 11 марта 2020

Я написал пользовательскую функцию проверки.

function ($attribute, $value, $fail) {
    $request = Invitation::where('invitation_token', md5($value));

    if ($request === null) {
        $fail('Invitation Code is invalid.');    
    } elseif ($request->is_active === false) {
        $fail('This Invitation Code has been expired.');
    }
}

Это выдает ошибку: Property [is_active] does not exist on the Eloquent builder instance. Почему бы не получить объект Invitation?

1 Ответ

1 голос
/ 11 марта 2020

Вы только что создали запрос, но не запустили его.

В этом случае вы можете выбрать только первый элемент, используя метод get().

$request = Invitation::where('invitation_token', md5($value))->first();

Использование этого метода решит вашу проблему. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...