NSFetchedPropertyDescription
NSFetchedPropertyDescription
класс используется для определения “выбранных свойств”. Выбранные свойства позволяют Вам указывать связанные объекты через слабое, однонаправленное отношение, определенное запросом выборки.
Примером мог бы быть список воспроизведения iTunes, если выражено как свойство содержания объекта. Песни не принадлежат определенному списку воспроизведения, особенно в случае, что они находятся на удаленном сервере. Список воспроизведения может остаться даже после того, как песни были удалены, или удаленный сервер стал недоступным. Отметьте, однако, что в отличие от списка воспроизведения выбранное свойство статично — оно динамично не обновляет себя как объекты в целевом изменении объекта.
Эффект выбранного свойства подобен выполнению выборки, запрашивают себя и размещение результатов в переходном атрибуте, несмотря на то, что с платформой, управляющей подробными данными. В частности выбранное свойство не выбирается, пока его не требуют, и результаты тогда кэшируются, пока объект не превращен в отказ. Вы используете refreshObject:mergeChanges:
(NSManagedObjectContext
) когда объектный отказ затем запущен, для ручного обновления свойств — это заставляет запрос выборки, связанный с этим свойством выполняться снова.
В отличие от других отношений, которые являются всеми наборами, выбранные свойства представлены упорядоченным NSArray
возразите так же, как если бы Вы выполнили запрос выборки сами. Запрос выборки, связанный со свойством, может иметь упорядочивание вида. Значение для выбранного свойства управляемого объекта не поддерживает mutableArrayValueForKey:
.
Выберите переменные запроса
Набор запросов выборки на выбранном свойстве имеет 2 привязки специальной переменной, которую можно использовать: $FETCH_SOURCE
и $FETCHED_PROPERTY
. Источник относится к определенному управляемому объекту, имеющему это свойство; свойство относится к NSFetchedPropertyDescription
сам объект (которому можно было связать пользовательскую информацию с ним, что Вы хотите использовать).
Редактирование выбранных описаний свойства
Выбранные описания Свойства доступны для редактирования, пока они не используются менеджером по графу объектов. Это позволяет Вам создавать или изменять их динамично. Однако, как только описание используется (когда модель управляемого объекта, которой оно принадлежит, связана с персистентным координатором хранилища), оно не должно (действительно не может) быть измененным. Во время выполнения это осуществляется: любая попытка видоизменить модель или любой из ее предметов после модели связана с персистентными причинами координатора хранилища исключение, которое будет брошено. Если необходимо изменить модель, использующуюся, создайте копию, измените копию, и затем отбросьте объекты со старой моделью.
Наследование
-
NSObject
-
NSPropertyDescription
-
NSFetchedPropertyDescription
-
NSObject
-
NSPropertyDescription
-
NSFetchedPropertyDescription
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCoding
-
NSCopying
-
NSObject
Оператор импорта
Swift
import CoreData
Objective C
@import CoreData;
Доступность
Доступный в OS X v10.4 и позже.
-
fetchRequest fetchRequest
СвойствоЗапрос выборки получателя.
Объявление
Swift
var fetchRequest: NSFetchRequest?
Objective C
@property(strong) NSFetchRequest *fetchRequest
Специальные замечания
Если модель получателя использовалась менеджером по графу объектов, установка запроса выборки повышает исключение.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.4 и позже.