Как я могу сохранить несколько строк в одной мутации в 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
}
}
Теперь вы можете изменить имя в соответствии с вашими требованиями объекта.
Вы сделали это успешно...