我想知道如何在Cloud Kit中的私有数据库中获取包含所有记录类型名称的数组,以便读取我的所有数据?
我保存了我的数据:
CKRecord* fav1 = [[CKRecord alloc] initWithRecordType:@"Favoris1"];
[fav1 setObject:@"Favoris 1 name"forKey:@"name"];
[fav1 setObject:@"2003 year"forKey:@"year"];
[self.privateDatabase saveRecord:fav1
completionHandler:^(CKRecord *savedState, NSError *error) {
if (error) {
NSLog(@"ERROR SAVING: %@", error);
}
else{
NSLog(@"SAVE OK");
}
}];
我读了我的数据:
CKQuery *query = [[CKQuery alloc] initWithRecordType:@"Favoris1" predicate:[NSPredicate predicateWithFormat:@"TRUEPREDICATE"]];
[self.privateDatabase performQuery:query
inZoneWithID:nil
completionHandler:^(NSArray *results, NSError *error)
{
if (!error)
{
NSLog(@"results query %@", results);
NSLog(@"--> %@",[[results objectAtIndex:0] objectForKey:@"name"]);
NSLog(@"--> %@",[[results objectAtIndex:0] objectForKey:@"year"]);
}
else
{
NSLog(@"FETCH ERROR: %@", error);
}
}];
我想用另一个属性保存另一条记录,如:
CKRecord* fav2 = [[CKRecord alloc] initWithRecordType:@"Favoris2"];
[fav2 setObject:@"Favoris 2 name"forKey:@"name"];
[fav2 setObject:@"2005 year"forKey:@"year"];
如何保存一个包含Favoris1和Favoris2的数组,以便在我保存后读取所有记录?
答案 0 :(得分:0)
由于对象是相同的,如果你只使用1个recordType并添加一个额外的字段来指定你的自定义类型(Favoris1或Favoris2)会更好然后你只能查询recordType并在返回的字段中看到什么自定义类型。