ORMField batching results in null result
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Bug
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- graphql, python, sqlalchemy
- Bereich
- backend-api-design, database
Rechercherichtung
Reproduziere das gemeldete Verhalten aus dem FooObject ORMField, dem test_query_batching resolver und der BarObjectConnection.edges query mit den aufgeführten Versionen von SQLAlchemy, Flask-SQLAlchemy und graphene-sqlalchemy. Verfolge den Batching-Pfad und vergleiche ihn mit deaktiviertem Batching; abgeschlossen ist die Aufgabe, wenn die Abfrage gefüllte edges ohne die Non-Null-Verletzung zurückgibt und dabei das bestehende Verhalten ohne Batching beibehält.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
I'm trying to get batching set up on a 1:N relationship. Suppose a Foo has many Bars
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)
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
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
- Vorherrschende Sprache
- Python
- Sterne
- 984
- Forks
- 224
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus graphql-python/graphene-sqlalchemy
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
graphql-python/graphene-sqlalchemy#422 · 1 Kommentar ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
graphql-python/graphene-sqlalchemy#419 · 3 Kommentare ·
Alle Issues in graphql-python/graphene-sqlalchemy
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
vllm-project/vllm#61131 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
kubernetes-client/python#2735 ·
Maintainer antworten meist innerhalb von 1 Tag
-
desktop help wanted test
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
docs pydanty:is-working
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
pydantic/pydantic-ai#10113 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Tutorial unit test leaks sample data into tutorial doctestEvtl. vergeben @Gambit-Checkmate hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100