全局配置

通过模式配置,可以全局禁用特定类型的操作。 要单独设置操作,请参阅 类型配置.

例如,如果要一次性禁用所有顶级聚合操作,Neo4j GraphQL 库通过使用@query的模式扩展提供此选项

type Movie {
    title: String
    actors: [Actor!]! @relationship(type: "ACTED_IN", direction: IN)
}

type Actor {
    name: String
    movies: [Movie!]! @relationship(type: "ACTED_IN", direction: OUT)
}
extend schema @query(read: true, aggregate: false)

查询

  • 电影

  • moviesAggregate

  • moviesConnection

  • 演员

  • actorsAggregate

  • actorsConnection

无效的模式使用

相同的模式配置指令不能同时应用于模式和对象。 以以下类型定义为例

type Movie {
    title: String
    actors: [Actor!]! @relationship(type: "ACTED_IN", direction: IN)
}

type Actor @query(read: false, aggregate: true) {
    name: String
    movies: [Movie!]! @relationship(type: "ACTED_IN", direction: OUT)
}
extend schema @query(read: true, aggregate: false)

此配置会导致错误"@query directive already defined at the schema location"