Всем привет, поставил https://github.com/overblog/GraphQLBundle на symgony 3.4 и сделал сдедующие типы
type RootQuery {
post(limit: Int, offset: Int): [Post]
}
type Post {
id: ID
title(sort: String, search: String): String
href: String
}
далее я сделал ResolverMap
<?php
class PostMap extends ResolverMap
{
/**
* @return array|callable[]
*/
public function map()
{
return [
'RootQuery' => [
self::RESOLVE_FIELD => function ($value, Argument $argument, \ArrayObject $context, ResolveInfo $info) {
$limit = $argument['limit'] ?? 10;
$offset = $argument['offset'] ?? 0;
$paginator = new Paginator((int)$limit, (int)$offset);
return $this->getData($paginator);
},
],
];
}
}
Вроде все работает, но 1 момент понять не могу:
{
post(limit:10) {
id
title(sort: "ASC")
href
}
}
"limit" я получить могу, но "sort" нет. Как я могу в ResolveMap это разобрать?
Может быть в тип добавить RootQuery
type RootQuery {
post(limit: Int, offset: Int, sort: String): [Post]
}
Ну и потом
$limit = $argument['limit'] ?? 10;
$offset = $argument['offset'] ?? 0;
$sort = $argument['sort'] ?? 'id';
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости