Ich habe eine Frage, die ich scheinbar nicht alleine lösen kann.
Zusammen mit grundlegenden Frage, Mutation usw. Typen I die folgende Typdefinition gemacht haben:
module Types
UserType = GraphQL::ObjectType.define do
name 'User'
description 'A user'
implements GraphQL::Relay::Node.interface
global_id_field :id
field :email, !types.String, 'Email address'
connection :docs, DocType.connection_type, 'Available docs'
end
end
Und ich versuche es dann zur Abfrage mit:
query FileListQuery(
$after: String
$first: Int
) {
viewer {
currentUser {
docs(first: $first, after: $after) {
edges {
node {
id
name
__typename
}
cursor
}
pageInfo {
endCursor
hasNextPage
hasPreviousPage
startCursor
}
}
id
}
id
}
}
Und ich pass die folgende als Abfragevariablen:
{
"first": 1,
"after": null
}
Das Problem ist, dass es mit dem folgenden verschuldet:
{
"errors": [
{
"message": "Int isn't a defined input type (on $first)",
"locations": [
{
"line": 3,
"column": 3
}
],
"fields": [
"query FileListQuery"
]
}
]
}
Ich habe ehrlich gesagt keine Ahnung, warum es beschwert sich über die Art Int ...
Wenn ich der problematischen $first
Abfragevariable in der Anforderung loszuwerden, es funktioniert gut.
Dies:
query FileListQuery(
$after: String
) {
viewer {
currentUser {
docs(first: 10, after: $after) {
edges {
node {
id
name
__typename
}
cursor
}
pageInfo {
endCursor
hasNextPage
hasPreviousPage
startCursor
}
}
id
}
id
}
}
Produziert dies:
{
"data": {
"viewer": {
"currentUser": {
"docs": {
"edges": [
{
"node": {
"id": "1",
"name": "First Doc",
"__typename": "Doc"
},
"cursor": "MQ=="
}
],
"pageInfo": {
"endCursor": "MQ==",
"hasNextPage": false,
"hasPreviousPage": false,
"startCursor": "MQ=="
}
},
"id": "1"
},
"id": "VIEWER"
}
}
}
Irgendwelche Hinweise, Ideen, wie man dieses Problem beheben? Ich benutze das graphql-Juwel v1.6.3.
Haben Sie Ihr Problem lösen? Ich habe die gleiche Fehlermeldung, obwohl der Typ im Schema definiert ist ... – nattfodd
Hey, @nattfodd, pls überprüfen Sie die akzeptierte Antwort unten. AFAIK, die Fehlerbehebung für das Problem wurde zusammengeführt und sollte seitdem veröffentlicht werden. Wenn Sie immer noch auf das gleiche Problem stoßen, denke ich, dass das Problem möglicherweise noch zu lösen ist. – eploko