iOS
Uso de NSPredicate para Consultas en Objective-C para iOS
11 min
consultando con nspredicate introducción en esta sección aprenderás a usar nspredicate para definir tus consultas en objective c en cualquier momento, puedes acceder al proyecto completo construido con este tutorial en nuestro https //github com/templates back4app/ios install sdk requisitos previos en este tutorial utilizaremos una aplicación básica creada en objective c con xcode 9 1 y ios 11 para completar este tutorial, necesitas una aplicación creada en back4app nota sigue el https //www back4app com/docs/get started/new parse app para aprender cómo crear una aplicación en back4app xcode aplicación básica de ios nota si no tienes una aplicación básica creada, puedes abrir xcode y hacer clic en archivo > nuevo > proyecto > ios luego selecciona aplicación después de crear tu aplicación básica, estarás listo para seguir esta guía nota el sdk de parse para ios funciona con ios 7 0 o superior 1 obtén la plantilla descarga la plantilla en https //github com/back4app/ios objective c quickstart example/archive/master zip , y descomprime los archivos en tu carpeta de proyecto puedes hacer eso usando la siguiente línea de comando $ curl lok https //github com/back4app/ios objective c quickstart example/archive/master zip && unzip master zip 2 abre la plantilla del proyecto abre xcode haz clic en archivo >abrir archivo >abrir 3\ navega a la carpeta del proyecto y haz doble clic en quickstartobjcexampleapp xcworkspace quickstartobjcexampleapp xcworkspace 4\ espera a que xcode abra el proyecto 3 entendiendo la diferencia normalmente, para objective c tienes dos opciones para construir consultas usar ‘pfquery’ o ‘nspredicate’ ambos funcionan de manera similar, pero dependiendo de cuántas restricciones quieras usar, podría tener más sentido usar uno en lugar del otro por ejemplo, una consulta simple usando pfquery sería 1 \[query wherekey @"playername" notequalto @"michael yabuti"]; 2 \[query wherekey @"playerage" greaterthan @18]; pero una consulta más compleja podría convertirse en 1 \[query wherekey @"playername" notequalto @"michael yabuti"]; 2 \[query wherekey @"playerage" greaterthan @18]; 3 \[query wherekey @"playerheight" greaterthan @180]; 4 \[query wherekey @"playerweight" greaterthan @80]; 5 \[query wherekey @"playerfavoritecolour" notequalto @"blue"]; 6 \[query wherekey @"playerislefthanded" equalto @true]; 7 \[query wherekey @"playershoesize" notequalto @42]; 8 \[query wherekey @"playerlivingstate" equalto @"arizona"]; 9 \[query wherekey @"playerlivingcity" notequalto @"springfield"]; 10 \[query wherekey @"playermothersname" equalto @"jane"]; así que, dependiendo de cada caso, puedes optar por usar ‘nspredicate’ en su lugar una consulta simple usando ‘nspredicate’ sería 1 nspredicate predicate = \[nspredicate predicatewithformat @"playername != 'michael yabuti' and playerage > 18"]; 2 pfquery query = \[pfquery querywithclassname @"gamescore" predicate\ predicate]; mientras que una consulta más compleja podría convertirse en 1 nspredicate predicate = \[nspredicate predicatewithformat @"playername != 'michael yabuti' and playerage > 18 and playerheight > 180 and playerweight > 80 and playerfavoritecolour != 'blue' and playerislefthanded = true and playershoesize != 42 and playerlivingstate = 'arizona' and playerlivingcity != 'springfield' and playermothersname = 'jane'"]; 2 pfquery query = \[pfquery querywithclassname @"gamescore" predicate\ predicate]; 4 ejecutando tu consulta puedes, entonces, ejecutar tu consulta 1 \[query findobjectsinbackgroundwithblock ^(nsarray objects, nserror error) { 2 if (!error) { 3 // la solicitud tuvo éxito 4 } 5 }]; próximos pasos en este punto, has aprendido cómo comenzar con aplicaciones ios aprende más paseando por nuestros https //www back4app com/docs/ios/ios app template o revisa https //docs parseplatform org/ios/guide/