Найти тему
Laravel Topsite Web

Повторяющиеся модели с помощью пакета Recurring Models в Laravel

Иногда вам нужны данные для повторения в интервале дат, таких как встреча в постоянном календаре, еженедельное мероприятие или график платежей. Пакет Recurring Models для Laravel — это окончательное решение для добавления повторяющихся функций в ваши модели Laravel:

$model->repeat()->daily();
$model->repeat()->weekly();
$model->repeat()->weekly()
->on(['среда', 'четверг', 'пятница']);

Когда вы повторяете модель, начальная дата вычисляется с использованием метода startsAt() в модели. Или вы можете указать дату начала следующим образом:

$model->repeat()->daily()->startsAt(Carbon::make());

Вы также можете установить дату окончания, когда повторяющаяся модель должна прекратиться:

$model->repeat()->daily()->endsAt(
Carbon::make('2023-06-01')
);

И как только у вас появятся повторяющиеся данные, вы можете получить их, используя предоставленные пакетом области:

$tasks = Task::whereOccurresOn(
Carbon::make('2023-05-01')
)->get();
$tasks = Task::whereOccurresBetween(
Carbon::make('2023-05-01'),
Carbon::make('2023-05-30')
)->get();

Этот новый пакет может послужить отличным вдохновением для упрощения моделей, которые нужно повторять с датами.