Как я могу сохранить несколько строк в одной мутации в graphql и mongodb?

Здесь я хочу добавить несколько мыслей в одном запросе мутации. Как я могу добиться этого:

mutation{
  savethoughts(data: [{id:1,name:"a"},data: {id:2,name:"b"}]){
    id
  }
}

1 ответ

Для сохранения нескольких записей в базе данных вам необходимо тщательно выполнять все шаги

Например

mutation{
  setMultipleRecord(data: [{title: "first Title", name: "First"},
                           {title: "Second Title", name: "Second"}])
}

У вас должен быть тип схемы

  `
  .......
  input Record {
    title: String!
    name: String!
  }
  .....
  ` 

И добавить мутацию, учитывая, что

  type Mutation/type RootMutation { {
    ......
    setMultipleRecord(data: [Record]): String!
  }

Здесь вы можете увидеть, что Record - это объект схемы типа ввода, где находится переменная, содержащая параметр данных, который мы используем для получения объекта данных.

Вы можете дать любое имя вместо данных, а также изменить аргумент в мутации

Теперь в резольвер функции

  Mutation: {
    setMultipleRecord: async(args, { data }) => {
      console.log(data)
      //Here data contain data which you passed which is
      // [{title: "first Title", name: "First"},
      //  {title: "Second Title", name: "Second"}]
      // Perform operation as your requirement
      // Please return String 
    }
  }

Теперь вы можете изменить имя в соответствии с вашими требованиями объекта.

Вы сделали это успешно...

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