Siarhei
Ребята, такой вопрос: а Job из таблицы должен удаляться или как-то помечаться, что он отработал? Что считается отработанным, если handle() метод у класса не выкинул Exception?
Siarhei
Я вот не могу доперереть: запускаю крон таск, он создает Jobs в БД и мне нужно чтобы после того, как Job отработает, чтобы он удалялся из БД и я пробую получить его в Queue::after, но мне почему-то в callback $event ничего не прилетает
Siarhei
::looping идет
Siarhei
Как сделать так, чтобы таск считался отработанным? Вернее, как Laravel понимает, что таск отработал?
Эмин
стопудова флаг должен быть когда он отработает
Эмин
смотрите внимательнее
Siarhei
Siarhei
Вот
Siarhei
Как было, так и осталось
Siarhei
После того, как worker прошелся по всем
Siarhei
Я вот не пойму, какой флаг должен сработать, в таблице остается только reserved_at таймстамп какой-то, но это по ходу не то
Maksim (Ellrion)
вообще удаляться должно. ты уверен что воркер по ним прошелся?)
Maksim (Ellrion)
пора фигачить свои статьи и видосы)
SarcasmIO
пора фигачить свои статьи и видосы)
++ захожу постоянно годноту у тебя наблюдаю
Antonio
вообще удаляться должно. ты уверен что воркер по ним прошелся?)
Права на удаление июу пользователей стоит проверить
Siarhei
👆права проверт
я в дев среде от рута запускаю
Siarhei
а какие должны быть права и у кого? права у юзера бд?
Siarhei
или права пользователя запустившего воркер?
Siarhei
рут рут
Antonio
Да, в бд на удаление записей
Siarhei
и там и там рут
Siarhei
Т.е. после выполнения handle() запись с Job должна удаляться, так?
Maksim (Ellrion)
ну это по идее общий принцап очередей
Siarhei
я вот тоже так думаю
Siarhei
но вот не срабатывает почему-то
Siarhei
вернее, job то отрабатывает без эксепшена
Siarhei
и в failed jobs тоже пусто
Siarhei
странно это всё
Aleksey Y.
В .env что написано?
Aleksey Y.
sync?
Egor
Привет. Кто-нибудь сталкивался? После редактирования вьюхи на некоторое время возникает такая ошибка, потом исчезает. Дело в синхронизации файлов между локалью и вагрант коробкой?
Юрий
вьюхи же рендерятся и кэшируются еще.
Egor
Да, в курсе. Не пойму в чем проблема.
Siarhei
sync?
database
Siarhei
BROADCAST_DRIVER=log CACHE_DRIVER=file SESSION_DRIVER=file QUEUE_DRIVER=database
Konstantin
скорее всего в отсутствии редиса
Konstantin
))
Siarhei
а причем тут редис?
Siarhei
если jobs хранятся в базе
Siarhei
Так, а проблема в чем?
worker проходится по jobs, отрабабывает и не удаляет
Konstantin
на sync переключи и посмотри что делается
Aleksey Y.
worker проходится по jobs, отрабабывает и не удаляет
Если не удаляет, значит задание не выполнено
Siarhei
Если не удаляет, значит задание не выполнено
А что является критерием успешного выполнения? Если не было эксепшена? В failed jobs пусто : ( Не могу понять, почему не выполняется
Siarhei
Попробую sync
Siarhei
Что-то тоже самое
Siarhei
И с sync непонятно, выполнился job или нет
Siarhei
Но looping идет
Siarhei
Я могу и редис попробовать, но чем удобно база — хочу убедиться, что все работает как надо
Siarhei
Horizon только для 5.5?
Siarhei
Или 5.4 подойдет?
Konstantin
в sync они выполняются сразу
Konstantin
свотри сами jobs
Konstantin
и laravel log
Юрий
Пиши логи в джобах и узнаешь, отрабатывают ли
Alexander
Никто не подскажет, почему на амазоне сертификат цепляется не к тому домену на одной машине? Как привязать свой сертификат к своему домену?
Anton
чёт под вечер туплю... есть модель (мероприятие) у него есть связь ->belongToMany(University), как мне выбрать все мероприятия что проходят в списке университетов, да так чтобы 1 мероприятие только 1 раз было
Anton
Ну то есть SQL с join я могу написать - проблем нет, хочется через ORM
Anton
whereHas?
Roman
whereHas?
А что есть? Коллекция университетов?
Anton
массив id универов
Roman
массив id универов
а whereIn не подходит тогда?
Anton
в таблице мероприятий нет university_id - есть отдельная таблица там где event_univerity
Anton
конечно можно сделать Event::join('event_university' ...)->whereIn('event_university.university_id', [])->distinct()->get(['events.*']);
Anton
но что-то мне кажется можно проще
Roman
а что-нибудь типа Event::whereIn(...)->map->universities()->distinct()->get() ?
Anton
Event::whereIn(...) - будет искать поле в Event
Anton
насколько я могу понять
Roman
ну так если есть id от Event? по ним и найти элементы
Roman
а, блин. id универов. Значит просто наоборот
Roman
University::whereIn('id', $universityIds)->map->events()->distincts()->get()
Roman
насколько я могу понять
если опять не верно - интересно верное решение услышать))
Roman
Ещё мне кажется, в плане запросов, orm будет строить не самое элегантное решение - можно туда eager load попробовать впихнуть. Но не пробовал на такой связи
Anton
Event::join('event_university' ...)->whereIn('event_university.university_id', [])->distinct()->get(['events.*']); - ну я вот такое сделал
Maksim (Ellrion)
Event::join('event_university' ...)->whereIn('event_university.university_id', [])->distinct()->get(['events.*']); - ну я вот такое сделал
правильный вариант с whereHas был озвучен сразу а потом чёт вы ушли в какую то не ту степь
ceii80
че мне какую админку для блога делать