Я не получаю, как из массива строк (parentRootItems), я получаю объекты с этим кодом - PullRequest
1 голос
/ 17 октября 2011

Я не получаю, как из массива строк (parentRootItems), я получаю объекты с этим кодом:

NSArray *parentRootItems = [pFolder rootItems];
NSLog(@"parentRootItems %@", [parentRootItems description]);

NSString *keyPath = [NSString stringWithFormat:@"@distinctUnionOfObjects.%@", metadata.lookupItemsKeyPath];
NSLog(@"keyPath %@", keyPath);

NSArray *managedItems = [parentRootItems valueForKeyPath:keyPath];
NSLog(@"managedItems %@", [managedItems description]);

Спасибо

выход

parentRootItems (Self-Inflicted Wounds / Rebirth)
                (Self-Inflicted Wounds / Rebirth)
                ...


keyPath @distinctUnionOfObjects.Series

 managedItems (
    <CBSeries: 0x1ddf3c0> (entity: Series; id: 0x1ddf260 <x-coredata://2B6F6719-9BCB-4C5C-B027-0DE2C7C1910C/Series/p350> ; data: {
    ClzID = 37268;
    Comics = "<relationship fault: 0x1de3790 'Comics'>";
    Complete = 0;
    DisplayName = Annihilators;
    Frequency = nil;
    ISSN = nil;
    Image = nil;
    Name = nil;
    NumIssues = 0;
    SortName = Annihilators;
    Stories = "<relationship fault: 0x1de39c0 'Stories'>";
    The = nil;
    URL = nil;
    UniqueID = 1;
}),
    <CBSeries: 0x1dd2940> (entity: Series; id: 0x1db4b60 <x-coredata://2B6F6719-9BCB-4C5C-B027-0DE2C7C1910C/Series/p354> ; data: {
    ClzID = 3856;
    Comics = "<relationship fault: 0x1de4230 'Comics'>";
    Complete = 0;
    DisplayName = Futurama;
    Frequency = nil;
    ISSN = nil;
    Image = nil;
    Name = nil;
    NumIssues = 0;
    SortName = Futurama;
    Stories = "<relationship fault: 0x1de4510 'Stories'>";
    The = nil;
    URL = nil;
    UniqueID = 9;
}),
...

1 Ответ

0 голосов
/ 17 октября 2011

parentRootItems не является массивом строк. Похоже, это массив управляемых объектов, каждый из которых имеет атрибут .Series, который указывает на другой управляемый объект, объект Series.

Вы получаете массив, содержащий каждую Series сущность, используемую объектами в parentRootItems, с удалением любых дубликатов.

Чтобы более четко увидеть, что находится в parentRootItems, используйте следующее сообщение журнала вместо description, которое вы сейчас делаете:

NSLog(@"Parent root items: %@",parentRootItems);  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...