【发布时间】:2022-02-08 04:15:49
【问题描述】:
我有两个具体类型 Prodotto 和 ProdottoVariante 的联合,它们都实现了 Articolo 类型的接口。
union Articoli = Prodotto | ProdottoVariante
extend type Query {
articoli: [Articoli!]!
}
我想通过输入 articoli 查询所有 Prodotto 和所有 ProdottoVariante,但我不知道如何解决 Articoli
我正在尝试这种方式:
func (r *queryResolver) Articoli(ctx context.Context) ([]model.Articoli, error) {
var articoli []model.Articoli
r.DB.Model(&model.Prodotto{}).Select("nome").Find(&articoli)
r.DB.Model(&model.ProdottoVariante{}).Select("nome").Find(&articoli)
return articoli, nil
}
我是这样查询的:
query {
articoli {
__typename
...on Prodotto {
nome
}
}
}
但我收到此错误:
{
"errors": [
{
"message": "must not be null",
"path": [
"articoli",
0
]
}
],
"data": null
}
sql: Scan error on column index 0, name "nome": unsupported Scan, storing driver.Value type string into type *model.Articoli
如何正确解决与 gorm 的联合?
【问题讨论】: