Мутация GraphQL в поле id

У меня есть схема GraphQL под названием Car Manufacturer, которая имеет два поля, id а также name, То, что я пытаюсь сделать с помощью GraphiQL, это вставить несколько данных в схему, но мне нужно изменить оба упомянутых поля.

Есть ли способ вставить желаемое значение на id поле?

1 ответ

Почему вы хотите изменить id? Для использования их в качестве индексов? подобно id: 1, id: 2 и так далее? Если это так, у вас должно быть что-то вроде globalIdField от graphql-relay по-моему. Не мутировать эти ids сам. Например:

import { GraphQLObjectType, GraphQLFloat } from 'graphql';
import { globalIdField } from 'graphql-relay';

export default new GraphQLObjectType({
  name: 'Car anufacturer',
  description: 'desc',
  fields: () => ({
    id: globalIdField('CarManufacturer'),
    title: {
      type: GraphQLString,
      resolve: async obj => obj.title,
    },
  }),
});

Таким образом, вы будете иметь уникальные идентификаторы, и вы можете включить эти идентификаторы на ObjectIdдля использования с MongoDB например.

Если вы хотите изменить эти значения по любой другой причине, вы должны создать Mutations как сказал @arian

Я надеюсь, что я вам как-то помог:)

Другие вопросы по тегам