Laravel Queues и FirstOrNew - PullRequest
       8

Laravel Queues и FirstOrNew

0 голосов
/ 23 декабря 2018

Я использую очередь Laravel для получения данных из API, когда меня уведомляют об изменениях через Webhooks.Webhook возвращает только идентификатор измененного объекта, поэтому мне нужно сделать запрос к API, чтобы получить остальное.

Я отправляю задание, чтобы получить объект по идентификатору, оно выполняется в фоновом режиме (драйвер redis, супервизор),В очереди я использую:

Model::firstOrNew(['remote_id' => $id]);

, но на ->save() я получаю:

SQLSTATE [23000]: нарушение ограничения целостности: 1062 Повторяющаяся запись 'tag-12 'для ключа' category_type_remote_id_unique '(SQL: вставить в categories ...

Если я отлаживаю этот код с помощью драйвера sync, я не могу воспроизвести эту ошибку, она появляется тольков фоновых заданиях. Например, задание не может получить самые последние данные из БД и использует new часть firstOrNew вместо first

1 Ответ

0 голосов
/ 23 декабря 2018

проблема для mysql.Вы вводите повторяющуюся запись 'tag-12' и находите, какие ключи вы определили как уникальные.затем измените ваш метод firstOrNew

...