GraphQL Cookbook
Création d'un objet
8 min
créer un objet via l'api graphql de parse problème vous souhaitez créer un nouvel objet dans votre base de données via l'api graphql de parse solution en utilisant le graphql de parse, il existe deux façons différentes de créer un nouvel objet dans votre base de données https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic c'est la mutation que vous devez utiliser si vous n'avez pas déjà créé la classe de votre objet https //www back4app com/docs/parse graphql/graphql mutation create object#mutation class c'est la mutation recommandée si vous avez déjà créé la classe de votre objet informations sur la version selon la version de parse que vous choisissez d'exécuter, les requêtes graphql, les mutations et les résultats seront légèrement différents veuillez choisir l'exemple correct en fonction de la version de parse que vous exécutez utilisation de la mutation générique lorsque vous utilisez la create create mutation générique, parse server se comporte comme une base de données sans schéma cela signifie que vous n'avez pas besoin de définir la classe de votre objet dans le schéma de votre application à l'avance vous devez simplement envoyer les données de votre objet, et parse server ne se contentera pas de les stocker, mais apprendra également de celles ci et créera automatiquement une nouvelle classe dans le schéma de votre application par conséquent, la create create mutation générique des objets est la méthode que vous devez utiliser pour créer un nouvel objet si vous n'avez pas déjà créé la classe de votre objet vous pouvez également utiliser cette mutation pour créer un objet de classes préexistantes, mais, dans ces cas, nous recommandons d'utiliser la 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 } objet 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 } utilisation de la mutation de classe une fois que vous avez déjà créé la classe de votre objet dans le schéma de votre application (par exemple, en utilisant le https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic ), parse server ajoute instantanément à votre api graphql une nouvelle create\<classname> create\<classname> mutation pour créer un nouvel objet de cette classe par conséquent, la mutation de classe de l'objet est la méthode recommandée pour créer un nouvel objet si vous avez déjà créé la classe de votre objet étant donné que cette mutation connaît les données de votre classe, elle mettra automatiquement à votre disposition des fonctionnalités supplémentaires telles que l'auto complétion du code et la validation vous n'avez également pas besoin de spécifier les types de données lors de l'envoi de dates, de pointeurs, de relations, de fichiers, de points géographiques, de polygones ou d'octets via la mutation de création de classe cet exemple ne fonctionnera que si vous avez déjà créé la classe de votre objet vous pouvez créer une classe en utilisant le https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic 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 } anciennes versions de parse server serveur parse 3 9 0 mutation générique classe demande #dans parse 3 9 0, vous devez d'abord créer la classe elle même 1 mutation createclass { 2 createclass( 3 name "héros" 4 schemafields { 5 addstrings \[{name "nom"}] 6 addnumbers \[{name "hauteur"}] 7 }){ 8 schemafields{ 9 name 10 typename 11 } 12 } 13 } réponse 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" "nom", 19 " typename" "schemastringfield" 20 }, 21 { 22 "name" "hauteur", 23 " typename" "schemanumberfield" 24 }, 25 { 26 "name" "acl", 27 " typename" "schemaaclfield" 28 } 29 ] 30 } 31 } 32 } objet demande #et ensuite créer l'objet \#dans parse 3 9 0, vous devez d'abord créer la classe elle même 1 mutation createobject{ 2 createhero(fields { 3 name "luke skywalker" 4 }){ 5 id 6 createdat 7 } 8 } réponse 1 { 2 "data" { 3 "createhero" { 4 "id" "ckhurmmjzw", 5 "createdat" "2019 11 04t12 37 22 462z" 6 } 7 } 8 } mutation de classe serveur parse 3 9 0 1 mutation createobject{ 2 createhero(fields { 3 name "r2 d2" 4 }){ 5 id 6 createdat 7 } 8 } résultat 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 mutation générique parse server 3 8 0 1 mutation createobject { 2 create(classname "hero" fields { 3 name "luke skywalker" 4 }){ 5 objectid 6 createdat 7 } 8 } résultat 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 } mutation de classe parse server 3 8 0 1 mutation createhero { 2 createhero(fields { name "r2 d2" }) { 3 objectid, 4 createdat 5 } 6 } résultat 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 mutation générique 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 } résultat 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 } mutation 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 } résultat 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 }