[codewriter]

;;;;
Recent Tweets @

Uno de los errores típicos cuando comenzamos con Parse es la creación no deseada de clases en el sistema de persistencia de este MBaaS.

Supongamos que tenemos una clase Amigos en Parse, si quisiéramos añadir un nuevo Amigo y persistirlo deberíamos hacer algo parecido a esto:

PFObject *amiguete = [[PFObject alloc]initWithClassName:@”Amigos”];

[amiguetes setObject:@”Juan” forKey:@”nombreAmigo”];

..

..

[amiguetes saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error){

}];

Esta pieza de código crearía la primera vez una entidad Amigos y el resto de ejecuciones añadiría nuevos objetos a la clase.

Hasta aquí nada nuevo, pero y si en otra parte del código tenemos que añadir otro nuevo amigo con más atributos…en principio el código sería similar

PFObject *

PFObject *amiguete = [[PFObject alloc]initWithClassName:@”amigos”];

[amiguetes setObject:@”Juan” forKey:@”nombreAmigo”];

[amiguetes setObject:@”Martín” forKey:@”apellidoAmigo”];

..

[amiguetes saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error){

}];

Este código crearía una nueva entidad llamada “amigos”, como decía al principio Parse hace diferencias entre mayúsculas y minúsculas.

SOLUCION:

En la consola de Parse, en los settings de nuestra aplicación debemos desactivar el siguiente switch ->

image

Esto nos impide crear nuevas Clases por error o por mala leche de algún usuario avanzado.

Una vez desactivado, si repetimos la ejecución del código anterior, obtenemos el siguiente mensaje:

2013-06-13 00:46:21.597 FotoFriends[3045:1d03] Error: This user is not allowed to access non-existent class: amigo. You can change this setting in the Data Browser. (Code: 119, Version: 1.2.9)

Esta es la keynote que utilice en la NSCoder Night Madrid de Diciembre’12 para hacer una introducción sobre parse.com.

Por resumir un poco las capacidades de Parse.com y sus SDKs, os diré que esta plataforma  hace real el concepto de “back-end as a service” proporcionando a un desarrollador independiente o todo un equipo de desarrollo, todas las piezas necesarias para construir una App: 

  • Persistencia: almacenar nuestros objetos en la nube de manera sencilla 
  • Control de usuarios: Muchas veces tenemos que invertir mucho tiempo en crear todo el sistema de control de usuarios, con sus maravillosos procesos de registro/login/reset de password….esto ya está incluido en el SDK nuestros esfuerzos estarán centrados en personalizar las vistas para estas historias.

Read More

detipografia:

Drunk shapes.

Cooool!!!!

Esta es la keynote de la charla para la NSCoder Night Madrid del 7 de noviembre. Intento mostrar a grandes rasgos como podemos utilizar Jenkins en nuestros proyectos IOS.

En breve un post con los pasos que he seguido para configurar xCode+Jenkins+GitHub+TestFlight.

Yo estuve en la codemotion_es :-)