Я пытаюсь создать связь в моей базе данных Neo4j с мутацией GraphQL.У меня уже есть ряд других мутаций, кроме этой, вызывающей проблемы.Это выглядит так:
mutation(
$id: String!,
$recipe: String!,
$date: String!
) {
CreateUserRecipeRelation(id:$id, recipe:$recipe, date:$date) {
id
recipe {
name
}
}
}
Я передаю следующий набор параметров:
{"id": "google-oauth2|yyyyremovedauthstuffyyyy", "recipe": "baked spaghetti", "date": "10/10/2018"}
Но площадка GraphQL выдает следующую ошибку:
"Переменная\ "$ id \" необходимого типа \ "String! \" не было предоставлено. "
В моем файле schema.graphql я определил следующее:
CreateUserRecipeRelation (
id: String
recipe: String
date: String
): User @cypher(statement:
"MATCH (r:Recipe{name:$recipe}), (u:User{id:$id}) CREATE (r)-[c:Created_By{date:$date}]->(u) RETURN r,c,u")
И если язапустить этот запрос шифра непосредственно в Neo4j, он работает просто отлично.В этом же проекте у меня есть 5 или 6 других мутаций, создающих отношения, в настоящее время работающих, но эта дает мне паузу.
ОБНОВЛЕНИЕ:
Это мутация, которая у меня сейчас работает, поэтомувы можете увидеть сходство в структуре:
CreateIngredientRelation (
name: String
recipe: String
quantity: String
): Ingredient @cypher(statement:
"MATCH (r:Recipe{name:$recipe}), (i:Ingredient{name:$name}) CREATE (r)-[c:Contains{quantity:$quantity}]->(i) RETURN r,c,i")
Этот работает отлично и создает тонны отношений с количеством, прикрепленным к ним.Вот почему я озадачен.Думаю, если бы они оба не работали, было бы легче найти решение.