Saltar al contenido

CloudKit: ¿Obtener todos los registros con un determinado tipo de registro?

No dejes de divulgar nuestro espacio y códigos con tus amigos, ayúdanos a aumentar nuestra comunidad.

Solución:

Aaaand, lo tengo. Usando el código a continuación, pude crear una consulta para ejecutar en la base de datos, para luego devolver un NSArray en el bloque de finalización, que recorrí y devolví el valor para el guardado key en un NSLog.

NSPredicate *predicate = [NSPredicate predicateWithValue:YES];
CKQuery *query = [[CKQuery alloc] initWithRecordType:@"Strings" predicate:predicate];

[_privateDatabase performQuery:query inZoneWithID:nil completionHandler:^(NSArray *results, NSError *error) 
    for (CKRecord *record in results) 
        NSLog(@"Contents: %@", [record objectForKey:@"stringArray"]);
    
];

Solución para rápido 4muestra cómo obtener todos los registros del tipo "TuTabla", también imprime System Field y Custom Field:

let query = CKQuery(recordType: "YourTable", predicate: NSPredicate(value: true))
CKContainer.default().publicCloudDatabase.perform(query, inZoneWith: nil)  (records, error) in
  records?.forEach( (record) in

    // System Field from property
    let recordName_fromProperty = record.recordID.recordName
    print("System Field, recordName: (recordName_fromProperty)")

    // Custom Field from key path (eg: deeplink)
    let deeplink = record.value(forKey: "deeplink")
    print("Custom Field, deeplink: (deeplink ?? "")")
  )

Aquí está la respuesta en Swift 3.0.

func myQuery()  
    let predicate = NSPredicate(value: true)
    let query = CKQuery(recordType: "tableName", predicate: predicate)

    publicDatabase.perform(query, inZoneWith: nil)  (record, error) in

        for record: CKRecord in record! 
            //...

            // if you want to access a certain 'field'.
            let name = record.value(forKeyPath: "Name") as! String                
        
    

Puedes secundar nuestra labor escribiendo un comentario o dejando una valoración te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada.