2014-10-06 12 views
5

CKQuery doc dice: I nomi chiave utilizzati nei predicati corrispondono ai campi nel record attualmente valutato. I nomi dei tasti possono includere i nomi delle proprietà dei metadati del record quali "dell'emissione” o qualsiasi campi dati aggiunti al record.Sono in grado di utilizzare recordID.recordName in un CKQuery?

Quali metadati altro posso usare in un CKQuery? Sono in grado di utilizzare record.recordID.recordName, se sì, qual è il key per esso

risposta

12

Sì, è possibile creare un CKQuery per la ricerca di un recordID come questo:?

var query = CKQuery(recordType: recordType, predicate: NSPredicate(format: "%K == %@", "creatorUserRecordID" ,CKReference(recordID: theSearchRecordId, action: CKReferenceAction.None))) 

Dove theSearchRecordId è il recordID.recordName che si sta cercando

campi di metadati sono recordID, RecordType, creationDate, creatorUserRecordID, modificationDate, lastModifiedUserRecordID, recordChangeTag

Vedere https://developer.apple.com/library/ios/documentation/CloudKit/Reference/CKRecord_class/index.html#//apple_ref/doc/uid/TP40014044-CH1-SW14

+9

santa maccheroni funziona, ero alla ricerca di questo più di un mese, l'espressione per il mio caso: ' let pr = NSPredicate (formato: "recordID =% @", CKRecordID (recordName: theSearchRecordId)) ' –

Problemi correlati