GraphQL 到 PostgresQL 类型映射
Posted
技术标签:
【中文标题】GraphQL 到 PostgresQL 类型映射【英文标题】:GraphQL to PostgresQL type mapping 【发布时间】:2016-11-25 15:36:53 【问题描述】:首先我必须承认:我对 GraphQL 很陌生。但尽管如此,我还是试图从数据库元数据中生成“GraphQLObjectType”模式。
我正在寻找 GraphQLTypes 和 PostgresQL 基本列类型之间的映射。
以下列表包含 postgresQL 中最有趣的类型:
bool、文本、日期、时间、时间戳、数字、整数、间隔、bytea、json、timestamptz、bigint、jsonb
到目前为止,我在挖掘 postgraphql 等几个项目时可以找到以下映射。
postgresType -> GraphQLType
文本 -> GraphQLString
整数 -> GraphQLInt
boolean -> GraphQLBoolean
【问题讨论】:
【参考方案1】:对于numeric
类型,如果你的问题域可以使用real
或double precision
,你可以使用GraphQLFloat
类型。它们都实现了相同的 IEEE 754 规范。有关详细信息,请参阅GraphQL spec 和floating-point types 上的 PostgreSQL 文档。
GraphQL 目前不支持与 PostgreSQL 一样多的默认数据类型。但是,可以使用 GraphQL 中可用的泛型类型来开发自定义 GraphQL 类型。查看很棒的指南 Deep Dive into GraphQL Type System 了解如何做到这一点。另一个例子是graphql-custom-types。
【讨论】:
以上是关于GraphQL 到 PostgresQL 类型映射的主要内容,如果未能解决你的问题,请参考以下文章
Graphql 工具:将实体类型映射到 graphql 类型
使用graphql代码生成器时如何将自定义标量类型映射到打字稿类型?
将 PostgreSQL JSON 列映射到 Hibernate 实体属性