Моя схема мутации:
mutation edit($id: Int!) {
user_edit(id:$id) {
user_name
}
}
переменная запроса следует
{
"id": 1
}
Я использую это с laravel-graphql. Вот мое определение user_edit
class UserEdit extends Mutation
{
protected $attributes = [
'name' => 'UserEdit',
'description' => 'A mutation'
];
public function type()
{
return GraphQL::type('UserInfo');
}
public function args()
{
return [
'id' => [
'type' => Type::int(),
],
];
}
public function resolve($root, $args, $context, ResolveInfo $info)
{
var_dump($args);exit;
$data = User::find($args['id']);
return $data;
}
}
Я использую свою строку запроса для запроса сервера graphql, затем сервер возвращает мою ошибку
{
"data": null,
"errors": [
{
"message": "Variable \"$edit1\" of required type \"Int!\" was not provided.",
"locations": [
{
"line": 1,
"column": 11
}
]
}
]
}
Я много чего перепробовал и прочитал документ на github [https://github.com/Folkloreatelier/laravel-graphql#creating-a-mutation][1]
и прочитайте документ на веб-сайте graphql и измените мой стиль определения аргументов разными способами, но все они не увенчались успехом, и это странно. Я могу получить аргументы, но использую статическая переменная как следует
mutation edit{
user_edit(id:1) {
user_name
}
}
и тогда это сработало! Я пытался погуглить, но ничего не понял. Я думаю, мне действительно нужна помощь