В настоящее время я работаю с Sequelize и испытываю проблему при создании необработанных запросов с заменами вместе с PostgreSQL.
**Expected**
sequelize.query('SELECT ? FROM users WHERE status = ?', {
replacements: ['username', 'active'],
type: sequelize.QueryTypes.SELECT
})
SELECT "username" FROM users WHERE status = "active"
**Actual**
sequelize.query('SELECT ? FROM users WHERE status = ?', {
replacements: ['username', 'active'],
type: sequelize.QueryTypes.SELECT
})
SELECT 'username' FROM users WHERE status = 'active'
Запрос не выполняется, так как '
недопустим, это должно быть "
.Можно ли как-то сказать Sequelize использовать другой символ для экранирования данных?
Я нашел это https://github.com/sequelize/sequelize/blob/master/lib/sql-string.js#L91, которое, кажется, имеет '
в жестком коде.