Я бы порекомендовал установить модель, которая выглядит примерно так:
![Multiple entity sample core data model](https://i.stack.imgur.com/3Isq8.png)
Итак, используя вашу запись:
Feature -> Image (destination: Image, inverse: feature)
Feature -> Thumb (destination: Thumb, inverse: feature)
Или наоборот (тоже самое):
Image -> Feature (destination: Feature, inverse: image)
Thumb -> Feature (destination: Feature, inverse: thumb)
Таким образом, вы держите доступ к большому пальцу и изображению отдельно, поэтому вам нужно загрузить только то, что вам нужно в это время. Вам не нужно иметь необходимость для хранения изображения и большого пальца в одной и той же сущности (поправьте меня, если я ошибаюсь ...), так что эта настройка сохраняет ясность и ясность.
EDIT
В качестве альтернативы, если вы хотите, чтобы изображение и большой палец находились в одном и том же подклассе NSManagedObject
(как вы предлагаете в своем обновлении), затем объедините их в качестве атрибутов в сущности «Изображение» (или как вы хотите ее назвать ):
![Single entity sample core data model](https://i.stack.imgur.com/jVlkI.png)
Используя этот подход, если вы хотите получить доступ к изображению или эскизу данной функции, просто перейдите к изображению функции, а затем получите доступ к изображению или большому пальцу:
UIImage *theThumbnail = [feature.picture thumb]; // Assuming you are storing the image & thumb as a transformable (UIImage) type