awakeFromFetch с неуправляемым свойством - PullRequest
4 голосов
/ 26 марта 2011

У меня есть подкласс NSManagedObject с некоторыми данными изображения в свойстве NSData (imageData), которое автоматически сохраняется.После загрузки данных из сети я также установил пользовательское свойство NSImage (image) с изображением, созданным из данных.

Проблема заключается в том, что если объект является ошибкой, awakeFromFetch равен not вызывается при доступе к свойству image, поскольку оно не обрабатывается Core Data.Конечно, я могу переопределить метод доступа image и убедиться, что свойства загружены (путем доступа к imageData), но было бы неплохо, если бы был способ вызвать awakeFromFetch как обычно.Есть предложения?

Ответы [ 2 ]

2 голосов
/ 27 марта 2011

Согласно предложению TechZen, я теперь выполняю запрос на выборку с returnsObjectsAsFaults, установленным в NO.Конечно, не идеально извлекать все данные из кэша каждый раз, когда объект выбирается, но в моем случае я всегда использую данные немедленно, поэтому это приемлемо.

0 голосов
/ 31 марта 2011

Кажется, вы хотите сделать две противоречивые вещи: вы хотите, чтобы основной объект оставался ошибочным, но имел доступ к его атрибутам. Тебе этого не сделать. Ошибка по определению не имеет атрибутов / свойств, потому что это просто заполнитель в графе объектов. Если вы хотите, чтобы ваш основной объект оставался неисправным, вы должны переместить UIImage в его собственную сущность и связать его с основным объектом. После этого вы сможете пройти по графу объектов, чтобы получить UIImage, не вызывая загрузку основного заполнителя ошибки объекта.

...