Запустите планировщик, используя метод cron в Laravel - PullRequest
0 голосов
/ 16 апреля 2019

У меня есть столбец expires_at в одной из моих моделей, и я хочу запустить планировщик на основе временной отметки этого.

Я попробовал следующий код:

$collection = Foo::first();
$schedule->call( function() {
    // Do Something
})->cron( \Carbon\Carbon::parse( $collection->expires_at )->format( 'i h d m' ) . ' *' );

Но когда я запускаю php artisan schedule:run по истечении срока действия, я получаю No scheduled commands are ready to run.

1 Ответ

0 голосов
/ 16 апреля 2019

Вместо вызова функции вы можете сделать это командой.Создайте команду для этого задания cron, и затем вы можете указать, что schdeuler в schedule методе kernel.php

schedule->command('command Name')
        ->cron( \Carbon\Carbon::parse( $collection->expires_at )->format( 'i h d m' ) . ' *' );

Надеюсь, это поможет:)

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