Sequelize:如何将日期时间列值作为字符串获取

Sequelize: how to get datetime column value as string

我在我的 Apollo GraphQL 服务器上使用带有 MySQL 的 Sequelize。

A​​pollo 部分不是很重要,但这是交易。

问题是,当您进行查询时,Sequelize return将日期时间值作为 Date 对象。 Apollo-Server 在从解析器获取数据后,将 Date 对象转换为秒数(使用 Date 对象的 valueOf() 函数)。但是,Apollo 服务器只允许 Date 对象使用 String 数据类型,因此在我的客户端,我得到了诸如“385823948287”之类的日期值。

我需要获取日期值作为 ISO 字符串。或 moment.js 接受的任何其他形式。

我必须将 Sequelize return DATETIME 值设为 ISOString,或将 Apollo Server 设为 ISO 字符串,而不是引号中的秒数。

如果您只知道如何完成其​​中一项工作,请告诉我。

我使用 Graphql ISO Date 解决了这个问题。现在我得到了正确的日期字符串。

安装模块,添加 scalar DateTime 并将日期值的数据类型更改为架构中的 DateTime。导入模块并将其作为 DateTime 添加到您的类型解析器中。