mirror of
https://github.com/strapi/strapi.git
synced 2025-08-09 17:26:11 +00:00
33 lines
557 B
JavaScript
33 lines
557 B
JavaScript
![]() |
'use strict';
|
||
|
|
||
|
const isDuplicateEntryError = error => {
|
||
|
// postgres
|
||
|
if (error.code === '23505') {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
// mysql
|
||
|
if (error.code === 'ER_DUP_ENTRY') {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
// sqlite
|
||
|
if (error.toString().includes('SQLITE_CONSTRAINT: UNIQUE')) {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
return false;
|
||
|
};
|
||
|
|
||
|
const handleDatabaseError = error => {
|
||
|
if (isDuplicateEntryError(error)) {
|
||
|
strapi.log.warn('Duplicate entry', error.toString());
|
||
|
throw new Error('Duplicate entry');
|
||
|
}
|
||
|
throw error;
|
||
|
};
|
||
|
|
||
|
module.exports = {
|
||
|
handleDatabaseError,
|
||
|
};
|