У меня есть таблица PostgreSQL, в которой есть столбец типа interval
, в котором хранится время в формате ISO 8601, т. Е. P1D
равняется "1 дню".
Проблема, с которой я столкнулся, заключается в том, что при выборе этих данных из базы данных с использованием Knex.js данные преобразуются из строки P1D
в объект JSON {"days":1}
, если я выполняю тот же базовый запрос выбора в команде line interface Я получаю строку P1D
назад и могу установить стиль вывода SET intervalStyle = iso_8601
.
Насколько я могу судить, это происходит с помощью зависимости Knex.js, называемой "node-pg-types", которая, в свою очередь, использует "postgres-interval". В Bookshelf.js вы можете установить процессор данных, а при непосредственном использовании модуля "pg" вы можете установить различные типы поведения, однако совершенно не ясно, как изменить поведение Knex.js в этом отношении, и, тем не менее, Bookshelf. JS может сделать это и построен на Knex.js.
Короче говоря, мой вопрос заключается в том, как заставить Knex.js выводить интервалы в стиле ISO 8601 для столбцов интервалов, а не для объекта JSON?