graphql-python / graphql-python/graphene-sqlalchemy

ORMField batching results in null result

未关闭
#401 1 条评论 5 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Python
星标
985
派生
223
PR 合并指标
30 天内没有已合并 PR

描述

I'm trying to get batching set up on a 1:N relationship. Suppose a `Foo` has many `Bar`s

```python
class FooObject(SQLAlchemyObjectType):
class Meta:
model = Foo
interfaces = (graphene.relay.Node,)

bars = ORMField(batching=True)
```
(I've also tried doing `batching=True` in the `Meta`)

```python
class Query(graphene.ObjectType):
test_query_batching = graphene.Field(
lambda: graphene.List(FooObject),
)

def resolve_test_foo_query_batching(self, info):
return Foo.query.limit(5).all()
```

Querying this resolver as such

```graphql
query TestQueryBatching {
testQueryBatching {
id
bars {
edges {
node {
id
}
}
}
}
}
```

results in `Cannot return null for non-nullable field BarObjectConnection.edges`. This query succeeds if `batching` is disabled. I'm unsure as to why we'd be getting null for `BarObjectConnection.edges`, though. Any ideas as to what might be leading to this?

Versions:
- SQLAlchemy==1.4.51
- Flask-SQLAlchemy==2.5.1
- graphene-sqlalchemy==3.0.0rc1

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。