Оповещение jQuery для нарушения целостности MySQL (Laravel) - PullRequest
0 голосов
/ 06 июня 2018

Мне не удалось найти ответ специально для моего случая, поэтому я надеюсь, что смогу хотя бы найти предложения здесь.

В моем приложении Laravel у меня есть таблица MySQL с вторичным ключом, использующая комбинацию двух полей в указанной таблице.Если дубликат пытается быть вставлен, я получаю следующее возвращенное значение SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '...key...' for key 'pro_number_origin и код возврата 500.

Однако мне любопытно, есть ли какие-либо предложения о том, как возвратить предупреждение jQuery (на самом базовом уровне), особенно для случаев, когда MySQL выдает ответное сообщение, говоря, что уже есть запись с конкретными параметрами.Или, может быть, даже по-другому, я бы предпочел не добавлять дополнительные запросы, если мне не нужно, и просто использовать этот конкретный возврат.

1 Ответ

0 голосов
/ 06 июня 2018

При использовании AJAX Laravel возвращает JSON-ответ трассировки стека, вы можете просмотреть трассировку стека и попытаться найти конкретные уникальные слова, которые будут отличать ошибки и основывать на них ваши оповещения.

ПростойНапример:

if (response.toLowerCase().includes('duplicate entry')) {
    alert('A duplicate entry key error was thrown.');
}

Теперь это может быть расширено для включения различных типов ошибок.

или , более сложным способом было бы создание пользовательского исключенияобработчики ошибок, основанных на AJAX, и обеспечивают чистые выходные данные для каждого типа ошибки в ключе JSON, который может быть помечен как error.

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