指令

这是 GraphQL 库版本 6 的文档。有关长期支持 (LTS) 版本 5,请参阅 GraphQL 库版本 5 LTS.

Neo4j GraphQL 库提供以下指令,在定义类型时可以使用这些指令

数据库映射

指令 描述

@relationship

配置 对象类型之间的关系.

@relationshipProperties

用于区分用于关系属性的接口和其他接口。

@node

指定表示 Neo4j 节点的 GraphQL 对象类型的配置。

@alias

将 GraphQL 模式字段映射到节点或关系上的 Neo4j 属性。

@declareRelationship

配置要在对象类型上实现的关系。

安全

指令 描述

@authentication

访问类型时需要身份验证检查。

@authorization

指定类型上查询和变异的授权规则。

@jwt

配置 JWT 身份验证和授权过滤器以包含其他 JWT 声明。

@jwtClaim

@jwt 结合使用。配置 JWT 身份验证和授权过滤器以包含额外的 JWT 声明,这些声明嵌套或使用 GraphQL 不支持的特殊字符。

@subscriptionsAuthorization

指定类型上订阅的授权规则。

自动生成

指令 描述

@id

将字段标记为对象类型的唯一 ID,并允许自动生成 ID。

@timestamp

将字段标记为用于在 createupdate 事件上存储时间戳。

模式配置

指令 描述

@query

限制库中查询操作的可用性。

@mutation

限制库中 Mutation 操作的可用性。

@subscription

限制库中的订阅操作。

@default

允许在对象创建期间为字段设置默认值。

@plural

重新定义如何为生成的运算组合类型的复数形式。对于没有正确复数形式或是非英语单词的类型特别有用。

@selectable

设置查询和聚合上字段的可用性。

@settable

设置 createupdate 输入上字段的可用性。

@filterable

定义为字段生成的过滤器。

索引和约束

指令 描述

@fulltext

表示应该为指定的节点及其属性在数据库中插入全文索引。

@unique

表示应该为其应用的字段在数据库中创建唯一性约束。

@vector

通过传入向量索引或搜索短语,对数据库执行向量索引搜索。

自定义逻辑

指令 描述

@cypher

覆盖字段解析(包括查询和变异字段),而是使用指定的 Cypher 解析。

@coalesce

提供了一种机制,用于针对节点上不存在的 null 值进行查询。

@limit

在节点上使用,以将值注入到 Cypher LIMIT 子句中。

@customResolver

指定字段由自定义解析器解析,并允许指定作为参数传递给自定义解析器的任何必需字段。

@populatedBy

指定一个回调函数(在 GraphQL 查询解析期间执行),以填充在输入中未提供的字段。

Relay

指令 描述

@relayId

指定该字段应该用作 Relay 的全局节点标识符。