Federation entity resolver generation
- 主要语言
- Go
- 星标
- 10.8k
- 派生
- 1.3k
- 平均合并
- 2 天 36 分钟
- 30 天内合并 PR
- 26
描述
A combination of https://github.com/99designs/gqlgen/issues/1388 & https://github.com/99designs/gqlgen/issues/1429
### What happened?
`{Entity}Resolver`'s are not generated (example [example/federation/reviews/graph/schema.resolvers.go](https://github.com/99designs/gqlgen/blob/master/example/federation/reviews/graph/schema.resolvers.go#L13-L44)) without specifying an explicit custom model (e.g. [example/federation/reviews/graph/model/models.go](https://github.com/99designs/gqlgen/blob/master/example/federation/reviews/graph/model/models.go))
Replication in the examples:
```
cd example/federation/reviews
rm graph/model/models.go
go generate server.go
```
```
validation failed: packages.Load: gqlgen/example/federation/reviews/graph/schema.resolvers.go:38:40: ProductResolver not declared by package generated
gqlgen/example/federation/reviews/graph/schema.resolvers.go:41:37: UserResolver not declared by package generated
exit status 3
```
### What did you expect?
I expected that generated Entitys would also generate the EntityResolver's? Is this not the case by design?
### Minimal graphql.schema and models to reproduce
```
type Review {
body: String!
}
extend type User @key(fields: "id") {
id: ID! @external
reviews: [Review]
}
```
### versions
- `gqlgen version`? v0.13.0
- `go version`? 1.14
- dep or go modules?
### Notes
Looking into the code a little more, I assume the issue is arising from `codegen/config/config.go` - `Init()`
贡献指南
调研方向
问题出在 federation 示例中;首先检查 example/federation/reviews/graph/schema.resolvers.go 和生成的代码。问题可能与 config.go 的 Init() 方法有关。运行复现步骤以查看验证错误,然后跟踪在没有自定义模型时实体解析器是如何生成的。检查 federation 代码生成逻辑,以了解缺失的解析器生成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- go
- 领域
- backend-api-design
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 描述清楚
- 新手友好度
- 45/100