Sequelize:如何将日期时间列值作为字符串获取
Sequelize: how to get datetime column value as string
我在我的 Apollo GraphQL 服务器上使用带有 MySQL 的 Sequelize。
Apollo 部分不是很重要,但这是交易。
问题是,当您进行查询时,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
添加到您的类型解析器中。
我在我的 Apollo GraphQL 服务器上使用带有 MySQL 的 Sequelize。
Apollo 部分不是很重要,但这是交易。
问题是,当您进行查询时,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
添加到您的类型解析器中。