GraphQL Cookbook
Encontrando objetos
10 min
encontrar objetos a través de la api graphql de parse problema quieres encontrar objetos de tu base de datos a través de la api graphql de parse solución usando graphql de parse, hay dos formas diferentes de encontrar objetos de tu base de datos usando consulta genérica https //www back4app com/docs/parse graphql/graphql query find objects#query generic esta es la consulta que puedes usar para encontrar objetos de cualquier clase usando consulta de clase https //www back4app com/docs/parse graphql/graphql query find objects#query class esta es la consulta recomendada que deberías usar para encontrar objetos de una clase específica información de la versión dependiendo de la versión de parse que elijas ejecutar, las consultas, mutaciones y resultados de graphql serán ligeramente diferentes por favor, elige el ejemplo correcto junto con la versión de parse que estás ejecutando usando consulta genérica cuando usas la find find consulta genérica, parse server se comporta como una base de datos sin esquema esto significa que no necesitas especificar qué campos del objeto deseas recuperar solo necesitas enviar el classname classname , y parse server devolverá todos los campos de los objetos encontrados por lo tanto, la consulta genérica de los objetos find find es la consulta que puedes usar para encontrar objetos de cualquier clase si deseas encontrar objetos de una clase específica, te recomendamos usar la consulta de clase https //www back4app com/docs/parse graphql/graphql query find objects#query class este ejemplo solo funcionará si usas un classname classname con un objeto existente puedes crear un objeto usando la receta para crear un objeto parse server 3 8 0 request 1 query findobject { 2 find(classname "hero") { 3 count, 4 results 5 } 6 } response 1 { 2 "data" { 3 "find" { 4 "count" 2, 5 "results" \[ 6 { 7 "objectid" "rr8jmfrnks", 8 "name" "luke skywalker", 9 "createdat" "2019 11 04t12 42 40 723z", 10 "updatedat" "2019 11 04t12 42 40 723z" 11 }, 12 { 13 "objectid" "tuecddcgno", 14 "name" "r2 d2", 15 "createdat" "2019 11 04t12 44 10 951z", 16 "updatedat" "2019 11 04t12 44 10 951z" 17 } 18 ] 19 } 20 } 21 } ejemplo 3 9 0 y posteriores parse 3 9 0 y posteriores no tienen los métodos genéricos get y find debes usar los métodos específicos a continuación para recuperar objetos uso de la consulta de clase una vez que ya has creado la clase de tu objeto en el esquema de tu aplicación (por ejemplo, usando la creación de un objeto https //www back4app com/docs/parse graphql/graphql mutation create object#mutation generic receta), parse server agrega instantáneamente a tu api de graphql una nueva find\<classname> find\<classname> consulta para encontrar objetos de esta clase por lo tanto, la consulta de clase del objeto es el método recomendado para encontrar objetos de una clase específica dado que esta consulta conoce los datos de tu clase, automáticamente te hará disponibles características adicionales como la autocompletación de código y la validación este ejemplo solo funcionará si usas una consulta de clase de un objeto existente puedes crear un objeto usando la creación de un objeto receta parse server 3 10 0 y posteriores request 1 query findhero { 2 heroes{ 3 count, 4 edges{ 5 node{ 6 name 7 createdat 8 updatedat 9 } 10 } 11 } 12 } response 1 { 2 "data" { 3 "heroes" { 4 "count" 3, 5 "edges" \[ 6 { 7 "node" { 8 "name" "luke skywalker", 9 "createdat" "2020 02 06t13 02 33 652z", 10 "updatedat" "2020 02 06t13 02 33 652z" 11 } 12 }, 13 { 14 "node" { 15 "name" "r2 d2", 16 "createdat" "2020 02 06t13 13 26 678z", 17 "updatedat" "2020 02 06t13 13 26 678z" 18 } 19 } 20 ] 21 } 22 } 23 } versiones anteriores de parse server parse 3 9 0 consulta de clase solicitud 1 query findhero { 2 heroes{ 3 count, 4 results { 5 id, 6 name, 7 createdat, 8 updatedat 9 } 10 } 11 } respuesta 1 { 2 "data" { 3 "heroes" { 4 "count" 2, 5 "results" \[ 6 { 7 "id" "ckhurmmjzw", 8 "name" "luke skywalker", 9 "createdat" "2019 11 04t12 37 22 462z", 10 "updatedat" "2019 11 04t12 37 22 462z" 11 }, 12 { 13 "id" "n5grpei0il", 14 "name" "r2 d2", 15 "createdat" "2019 11 04t12 45 00 882z", 16 "updatedat" "2019 11 04t12 45 00 882z" 17 } 18 ] 19 } 20 } 21 } parse server 3 8 0 consulta de clase solicitud 1 query findhero { 2 heroes{ 3 count, 4 results { 5 objectid, 6 name, 7 createdat, 8 updatedat 9 } 10 } 11 } respuesta 1 "data" { 2 "objects" { 3 "findhero" { 4 "count" 2, 5 "results" \[ 6 { 7 "objectid" "ffyobotk85", 8 "name" "luke skywalker", 9 "createdat" "2019 07 15t01 25 20 875z", 10 "updatedat" "2019 07 15t01 25 20 875z" 11 }, 12 { 13 "objectid" "jjh0aqqjfs", 14 "name" "r2 d2", 15 "createdat" "2019 07 15t02 22 04 982z", 16 "updatedat" "2019 07 15t02 22 04 982z" 17 } 18 ] 19 } 20 } 21 } 22 } parse server 3 7 2 consulta genérica solicitud 1 query findobject { 2 objects { 3 find(classname "hero") { 4 count, 5 results 6 } 7 } 8 } respuesta 1 { 2 "data" { 3 "objects" { 4 "find" { 5 "count" 2, 6 "results" \[ 7 { 8 "objectid" "ffyobotk85", 9 "name" "luke skywalker", 10 "createdat" "2019 07 15t01 25 20 875z", 11 "updatedat" "2019 07 15t01 25 20 875z" 12 }, 13 { 14 "objectid" "jjh0aqqjfs", 15 "name" "r2 d2", 16 "createdat" "2019 07 15t02 22 04 982z", 17 "updatedat" "2019 07 15t02 22 04 982z" 18 } 19 ] 20 } 21 } 22 } 23 } consulta de clase solicitud 1 query findhero { 2 objects { 3 findhero { 4 count, 5 results { 6 objectid, 7 name, 8 createdat, 9 updatedat 10 } 11 } 12 } 13 } respuesta 1 "data" { 2 "objects" { 3 "findhero" { 4 "count" 2, 5 "results" \[ 6 { 7 "objectid" "ffyobotk85", 8 "name" "luke skywalker", 9 "createdat" "2019 07 15t01 25 20 875z", 10 "updatedat" "2019 07 15t01 25 20 875z" 11 }, 12 { 13 "objectid" "jjh0aqqjfs", 14 "name" "r2 d2", 15 "createdat" "2019 07 15t02 22 04 982z", 16 "updatedat" "2019 07 15t02 22 04 982z" 17 } 18 ] 19 } 20 } 21 } 22 }