Настройка сообщения об ошибке. Integrity constraint violation: 1062 Duplicate entry
Есть в таблице images поле с уникальным значением
$table->string('url')->unique();
при записи существующего url, генерируется ошибка: Integrity constraint violation: 1062 Duplicate entry
Я перехватываю ошибку с помощью try catch и вывожу текст ошибки.
Подскажите, как можно выводить своё сообщение об ошибке вместо текущего сообщения?
К примеру если по ajax сохранять изображение, после сохранения выводится данное сообщение Integrity constraint violation: 1062 Duplicate entry, и нужно его настроить.
Ответы (1 шт):
Автор решения: Ипатьев
→ Ссылка
Внутри catch проверить, что это именно такая ошибка, и вернуть свой текст.
В противном случае снова выбросить ошибку чтобы она была обработана глобальным обработчиком ошибок
if ($message === "Integrity constraint violation: 1062 Duplicate entry") {
return response()->json(['error' => 'Уже есть такая фамилия, насяльник!']);
} else {
throw $e;
}