Получение Contentful ID в Gatsby GraphQL - PullRequest
0 голосов
/ 13 июля 2020

Я использую graghql для запроса данных из contentful в gatsby- node.js

exports.createPages = async ({ graphql, actions }) =>  {
  ...
  const result = await graphql(
    `
      {
        allContentfulArticle(
          sort: { order: DESC, fields: date },
          limit: 2000
        ) {
          totalCount,
          edges {
            node {
              id
              title
              excerpt
              date
              tag
              content{
                content
              }
            }
          }
        }
      }
    `
  )
})

Возвращенный идентификатор в узле не соответствует идентификатору моей контентной записи. Например, один идентификатор возврата - 32015820-f327-5085-b5c0-27146850a8f5, но идентификатор моей записи - 2pljYDQAJ8umcV5po5TDK8

. Когда я использую api доставки содержимого, я могу получить правильный идентификатор, что же произошло? Кто меняет формат id? Как получить правильный идентификатор? Плагин с наполнением содержимого, который я использую, - gatsby-source-contentful.

1 Ответ

1 голос
/ 13 июля 2020

Если вы откроете проводник GraphiQL на http://localhost:8000/___graphql, вы увидите всю схему GraphQL.

Как видите, для каждого элемента есть два поля идентификатора: только id - это идентификатор Gatsby, а contentful_id - это Contentful ID. Итак, contentful_id - это то, что вы ищете.

Содержательная схема GraphiQL explorer

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...