Хорошо, после того, как я зашел в тупик, модифицируя существующий пример Apple для CoreData, я начал совершенно новый, создав собственный проект, и это работало нормально, ..... пока я не попытался получить доступ к связанной сущности.
Итак, вот что я сделал.
Я создал 2 сущности, одна из которых представляет собой подробную информацию о другой, поэтому существует отношение один-2-один.
Сущность # 1, Акции:
- имя
- значение
- подробности -> отношение к сущности № 2
Entity # 2, StockDetails:
- банк
- опубликован
- акции -> отношение к сущности # 1
Теперь я создал «Класс управляемых объектов» для обеих сущностей.
Затем я создал несколько строк, чтобы поместить в них данные
NSManagedObjectContext *context = [self managedObjectContext];
Stocks *stockinfo= [NSEntityDescription
insertNewObjectForEntityForName:@"Stocks"
inManagedObjectContext:context];
stockinfo.name = @"Apple";
stockinfo.value = [NSNumber numberWithInt:200];
StockDetails *thestockdetails = [NSEntityDescription
insertNewObjectForEntityForName:@"StockDetails"
inManagedObjectContext:context];
thestockdetails.bank = @"Bank of America";
thestockdetails.published = [NSDate date];
thestockdetails.stock = stocks_;
stockinfo.details = thestockdetails ;
NSError *error;
if (![context save:&error])
{
NSLog(@"A Problem occured, couldn't save: %@", [error localizedDescription]);
}
Просто хочу упомянуть здесь, что я не получаю ошибку с этим.
Затем я поместил все в UITableViewController для предварительного просмотра и еще один для подробного просмотра. В предварительном просмотре отображается только информация о форме Entity # 1 (Stocks), и при ее выборе отображается подробный вид.
Теперь здесь я также отображаю информацию о форме Entity # 1 (Stocks), но я хочу показать также Entity # 2 (StockDetails).
Вот как я пытаюсь получить доступ к данным:
StockDetails *details_ = [stockinfo details];
И это дает мне EXC_BAD_ACCESS.
Так есть идеи, что я здесь не так делаю?
Спасибо