GraphQL Cookbook
Criando um objeto
8 min
criando um objeto através da api graphql do parse problema você quer criar um novo objeto em seu banco de dados através da api graphql do parse solução usando o graphql do parse, existem duas maneiras diferentes de criar um novo objeto em seu banco de dados usando mutação genérica https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic esta é a mutação que você deve usar se ainda não tiver criado a classe do seu objeto usando mutação de classe https //www back4app com/docs/parse graphql/graphql mutation create object#mutation class esta é a mutação recomendada se você já tiver criado a classe do seu objeto informações da versão dependendo da versão do parse que você escolher executar, as consultas graphql, mutações e resultados serão ligeiramente diferentes por favor, escolha o exemplo correto junto com a versão do parse que você está executando usando mutação genérica quando você usa a criação criação de mutação genérica, o parse server se comporta como um banco de dados sem esquema isso significa que você não precisa definir a classe do seu objeto no esquema da sua aplicação com antecedência você só precisa enviar os dados do seu objeto, e o parse server não apenas os armazenará, mas também aprenderá com eles e criará automaticamente uma nova classe no esquema da sua aplicação portanto, a criação criação de mutação genérica é o método que você deve usar para criar um novo objeto se você ainda não tiver criado a classe do seu objeto você também pode usar essa mutação para criar um objeto de classes pré existentes, mas, para esses casos, recomendamos usar a mutação de classe https //www back4app com/docs/parse graphql/graphql mutation create object#mutation class classe request #in parse 3 10 0 and later you must first create the class itself 1 mutation createclass { 2 createclass(input { 3 name "hero" 4 schemafields { 5 addstrings \[{name "name"}] 6 addnumbers \[{name "height"}] 7 } 8 }){ 9 class{ 10 schemafields{ 11 name 12 typename 13 } 14 } 15 } 16 } response 1 { 2 "data" { 3 "createclass" { 4 "class" { 5 "schemafields" \[ 6 { 7 "name" "objectid", 8 " typename" "schemastringfield" 9 }, 10 { 11 "name" "updatedat", 12 " typename" "schemadatefield" 13 }, 14 { 15 "name" "createdat", 16 " typename" "schemadatefield" 17 }, 18 { 19 "name" "name", 20 " typename" "schemastringfield" 21 }, 22 { 23 "name" "height", 24 " typename" "schemanumberfield" 25 }, 26 { 27 "name" "acl", 28 " typename" "schemaaclfield" 29 } 30 ] 31 } 32 } 33 } 34 } objeto request 1 mutation createobject{ 2 createhero(input {fields {name "luke skywalker"}}){ 3 hero{ 4 id 5 name 6 } 7 } 8 } response 1 { 2 "data" { 3 "createhero" { 4 "hero" { 5 "id" "sgvybzo5qjfpmufxcxn1", 6 "name" "luke skywalker" 7 } 8 } 9 } 10 } usando mutação de classe uma vez que você já tenha criado a classe do seu objeto no esquema da sua aplicação (por exemplo, usando a mutação genérica https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic ), o parse server adiciona instantaneamente à sua api graphql uma nova create\<classname> create\<classname> mutação para criar um novo objeto dessa classe portanto, a mutação de classe do objeto é o método recomendado para criar um novo objeto se você já tiver criado a classe do seu objeto como essa mutação conhece os dados da sua classe, ela tornará automaticamente disponíveis para você recursos adicionais como autocompletar código e validação você também não precisa especificar os tipos de dados ao enviar datas, ponteiros, relações, arquivos, pontos geográficos, polígonos ou bytes através da mutação de criação de classe este exemplo só funcionará se você já tiver criado a classe do seu objeto você pode criar uma classe usando a mutação genérica request 1 mutation createobject{ 2 createhero(input {fields {name "r2 d2"}}){ 3 hero{ 4 id 5 createdat 6 } 7 } 8 } response #notice the id property refers to the global id in the relay specification, not to confuse with the objectid from parse 1 { 2 "data" { 3 "createhero" { 4 "hero" { 5 "id" "sgvybzpvrm5tvdm1ynbp", 6 "createdat" "2020 02 06t13 13 26 678z" 7 } 8 } 9 } 10 } versões mais antigas do parse server parse server 3 9 0 mutação genérica classe requisição #no parse 3 9 0 você também deve primeiro criar a classe em si 1 mutation createclass { 2 createclass( 3 name "hero" 4 schemafields { 5 addstrings \[{name "name"}] 6 addnumbers \[{name "height"}] 7 }){ 8 schemafields{ 9 name 10 typename 11 } 12 } 13 } resposta 1 { 2 "data" { 3 "createclass" { 4 "schemafields" \[ 5 { 6 "name" "objectid", 7 " typename" "schemastringfield" 8 }, 9 { 10 "name" "updatedat", 11 " typename" "schemadatefield" 12 }, 13 { 14 "name" "createdat", 15 " typename" "schemadatefield" 16 }, 17 { 18 "name" "name", 19 " typename" "schemastringfield" 20 }, 21 { 22 "name" "height", 23 " typename" "schemanumberfield" 24 }, 25 { 26 "name" "acl", 27 " typename" "schemaaclfield" 28 } 29 ] 30 } 31 } 32 } objeto requisição #e então crie o objeto \#no parse 3 9 0 você deve primeiro criar a classe em si 1 mutation createobject{ 2 createhero(fields { 3 name "luke skywalker" 4 }){ 5 id 6 createdat 7 } 8 } resposta 1 { 2 "data" { 3 "createhero" { 4 "id" "ckhurmmjzw", 5 "createdat" "2019 11 04t12 37 22 462z" 6 } 7 } 8 } mutação de classe parse server 3 9 0 1 mutation createobject{ 2 createhero(fields { 3 name "r2 d2" 4 }){ 5 id 6 createdat 7 } 8 } resultado parse 3 9 0 1 { 2 "data" { 3 "createhero" { 4 "id" "n5grpei0il", 5 "createdat" "2019 11 04t12 45 00 882z" 6 } 7 } 8 } parse server 3 8 0 mutação genérica parse server 3 8 0 1 mutation createobject { 2 create(classname "hero" fields { 3 name "luke skywalker" 4 }){ 5 objectid 6 createdat 7 } 8 } resultado parse 3 8 0 1 { 2 "data" { 3 "objects" { 4 "create" { 5 "objectid" "ffyobotk85", 6 "createdat" "2019 07 15t01 25 20 875z" 7 } 8 } 9 } 10 } mutação de classe parse server 3 8 0 1 mutation createhero { 2 createhero(fields { name "r2 d2" }) { 3 objectid, 4 createdat 5 } 6 } resultado parse 3 8 0 1 { 2 "data" { 3 "createhero" { 4 "objectid" "tuecddcgno", 5 "createdat" "2019 11 04t12 44 10 951z" 6 } 7 } 8 } parse server 3 7 2 mutação genérica parse server 3 7 2 1 mutation createobject { 2 objects { 3 create(classname "hero", fields { name "luke skywalker" }) { 4 objectid, 5 createdat 6 } 7 } 8 } resultado parse 3 7 2 1 { 2 "data" { 3 "objects" { 4 "create" { 5 "objectid" "kr9aqnzfui", 6 "createdat" "2019 07 15t01 25 20 875z" 7 } 8 } 9 } 10 } mutação de classe parse server 3 7 2 1 mutation createhero { 2 objects { 3 createhero(fields { name "r2 d2" }) { 4 objectid, 5 createdat 6 } 7 } 8 } resultado parse 3 7 2 1 { 2 "data" { 3 "objects" { 4 "createhero" { 5 "objectid" "jjh0aqqjfs", 6 "createdat" "2019 07 15t02 22 04 982z" 7 } 8 } 9 } 10 }