#php #laravel-5.7
#php #laravel-5.7
Вопрос:
В моем коде laravel я отправил задание:
MyJob::dispatch()->delay(now()->addHours(48));
Но в другом фрагменте кода я хочу, чтобы это задание не было отправлено, потому что обнаружены условия, при которых больше не требуется выполнение задания. phpcode для соответствия критериям отмены отправки:
if ( $no_job_needed){
// Undispatch Job there
}
Ответ №1:
Вы можете использовать метод dispatchIf, например:
MyJob::dispatchIf($no_job_needed === false)->delay(now()->addHours(48));
Комментарии:
1. Ну, мой случай заключается в том, что я отправляю задание, например, для выделения некоторых баллов пользователю. Но другое событие, например, полученный вызов api, приводит к тому, что условие для моей работы больше не требуется.