Итак, я недавно обновился с Laravel 5.1 -> 5.4 и Cashier с 5.0 -> 7.0. В моем лезвии я использую эту проверку, чтобы увидеть, находится ли пользователь в льготном периоде.
<?php if(Auth::check() && Auth::user()->onGracePeriod()): ?>
Однако теперь этот код выдает исключение
Call to undefined method Illuminate\Database\Query\Builder::onGracePeriod()
Согласно документации, моя пользовательская модель имеет импорт
use Laravel\Cashier\Billable;
и оператор использования внутри самого класса
class User extends Model implements AuthenticatableContract,
CanResetPasswordContract
{
use Authenticatable, CanResetPassword, Billable;
/**
* The database table used by the model.
*
* @var string
...
Есть ли что-то еще, что может вызвать эту ошибку? Поиск по коду выглядит так, как будто функция находится в Subscription.php в кассе, но я не могу найти исправление. У меня также есть включенные даты, которые часто упоминаются в документации.
protected $dates = ['trial_ends_at', 'subscription_ends_at'];
Но у меня было это, и моя БД использовала это до версии 5.1, поэтому я сомневаюсь, что это связано. Любые идеи? Единственное, о чем я могу думать, это то, что при переходе с 5.1 -> 5.4 мне пришлось удалить «BillableContract», так как кажется, что он больше не используется, есть ли что-то, на что я должен его заменить? Спасибо!