I'm trying to make a mutation of user model via graphql (graphene_django). Here is a code sample.
class UserMutation(graphene.Mutation):
class Arguments:
email = graphene.String(required=True)
name = graphene.String(required=True)
age = graphene.String(required=True)
user = graphene.Field(UserType)
def mutate(self, info, email, name, age):
ok = True
user = User.objects.get(pk=id)
user.email = email
user.name = name
user.age = age
user.save()
return UserMutation(ok=ok, user=user)
class Mutation(graphene.ObjectType):
create_user = UserMutation.Field()
So, the problem is it doesn't work. When I try to make a mutation:
mutation CreateUser($email: String!, $name: String!, $age: String!) {
createUser(email: $email, name: $name, age: $age) {
email
name
age
}
}
Variables are:
{
"email": "lavrikrom2@gmail.com",
"name": "Roma",
"age": "25"
}
It returns me an error:
{
"message": "Unknown argument \"email\" on field \"createUser\" of type \"Mutation\".",
"locations": [
{
"line": 33,
"column": 14
}
]
}
But I specified arguments in mutate function. Does somebody know what I'm doing wrong? Thanks.