Проблемы с созданием схемы для подсчета в GraphQL, крэши с объектами - PullRequest
0 голосов
/ 13 июля 2020

Я создаю проект с бэкэндом Strapi с GraphQL. Все идет гладко, кроме тех случаев, когда я хочу посчитать количество товаров для пагинации. Для подсчета я создал настраиваемую схему подсчета, которая выглядит следующим образом:

  query: `
      productsCount(where: JSON): Int!
    `,
  resolver: {
    Query: {
      productsCount: {
        description: 'Return the count of products',
        resolverOf: 'application::product.product.count',
        resolver: async (obj, options, ctx) => {
          strapi.api.product.services.product
            .count(options.where || {})
            .then()
            .catch((err) => console.log(err));

          return await strapi.api.product.services.product.count(options.where || {});
        },
      },
    },
  },
};

Она работает, как ожидалось, когда я запрашиваю where и передаю обычные вещи, такие как {title:"Foo"}, на счетчик, но когда я передать в InputTypes, например, {"Foo":{title:"bar"}}, он вылетает с сообщением:

"выберите отдельный счетчик (*) как" count "из" products "left join" dev "." publi c " . "Foo" как "foo_1" на "foo_1". ​​"Id" = "products". "Foo", где "foo_1". ​​"Id" = $ 1 - недопустимый синтаксис ввода для целого типа: "{" title ":" Bar "}" ",

Есть идеи, как исправить это, чтобы он работал с InputTypes?

Обратите внимание, что« Foo »является типом коллекции для продуктов и добавляется и все работает с обычным запросом для продуктов с InputTypes, подобным описанному выше.

Заранее спасибо!

...