Переходный атрибут не найден в объекте - PullRequest
0 голосов
/ 22 апреля 2011

Я пытаюсь получить первую букву атрибута (автора) из моей предварительно заполненной базы данных sqlite.У меня нет проблем с извлечением данных из базы данных с использованием coredata.Но когда я пытаюсь получить данные из моего переходного свойства, я получаю следующее сообщение об ошибке: «NSFetchedResultsController ERROR: object {Autor =" \ U00cdtalo Calvino ";} возвратил нулевое значение для пути к ключу имени раздела« FirstLetter ». Объект будет помещенбезымянный раздел "...

Я создал временный атрибут с именем FirstLetter и внутри моей сущности Cit.У меня также есть мой класс для объекта.

Cit.h

@interface Cit : NSManagedObject {
@private
}
@property (nonatomic, retain) NSString * Autor;
@property (nonatomic, retain) NSString * FirstLetter;
- (NSString *) FirstLetter;
@end

Cit.m

#import "Cit.h"
@implementation Cit
@dynamic Autor;
@dynamic FirstLetter;

- (NSString *) FirstLetter {
    NSLog(@"doing");
    [self willAccessValueForKey:@"FirstLetter"];
    NSString * initial = [[self valueForKey:@"Autor"] substringToIndex:1];
    [self didAccessValueForKey:@"FirstLetter"];
    return initial;
}
@end

Я не могу заставить его работать.У кого-нибудь есть решение для этого ???спасибо!

1 Ответ

0 голосов
/ 25 апреля 2011

Я сделал нечто похожее в своем классе моделей, но я не стал создавать временный объект в модели. Я просто добавил метод - (NSString *)sectionIndex в мою модель, который возвращал первую букву строки, так же, как и вы.

Итак, я бы попробовал удалить атрибут transient из вашей модели и посмотреть, работает ли он лучше.

...