2015-05-01 2 views
1

Я могу изменить атрибут Reference List моего CKRecord в панели управления без проблем, но как я могу его модифицировать программным путем?Как изменить списки ссылок CloudKit

В настоящее время я пытаюсь изменить его как NSArray. Это не дает мне никакой ошибки, но даже несмотря на то, что содержимое массива в порядке, атрибут не устанавливается.

Также документация по спискам ссылок либо хорошо скрыта, либо вообще отсутствует.

   CKReference *reference = [[CKReference alloc] initWithRecord:connectionRecord action:CKReferenceActionNone]; 
       NSMutableArray *list_a = [record_a[@"connections"] mutableCopy]; 
       if (!list_a) list_a = [NSMutableArray array]; 
       [list_a addObject:reference]; 
       record_a[@"connections"] = list_a; 

       [publicDatabase saveRecord:record_a completionHandler:^(CKRecord *artworkRecord, NSError *error){ 
        if (!error) { 
         // Insert successfully saved record code 
        } 
        else { 
         // Insert error handling 
        } 
       }]; 

Я благодарен за любые идеи или предложения.

ответ

0

Оказывается, для изменения существующих CKRecords необходимо использовать CKModifyRecordsOperation.

+0

Любой шанс, что вы можете поделиться, как вы это сделали? Бонусные очки, если вы сделали это в Swift вместо Objective-C. :) –

Смежные вопросы