/ / Извлечени свойства, кръстосани връзки в магазина - цел-c, какао, основни данни

Извлечени свойства, взаимоотношения между обектите - цел-c, какао, ядро-данни

Имам магазин, който се синхронизира външнои магазин, който е уникален за екземпляра на приложението, така че за да разгранича чисто двете, искам да има някои единици за присъединяване между тях и след това да се разреши на субектите между използване на Fetched Properties, както е „обсъдено“ в Ръководството за програмиране на основни данни. :

developer.apple.com/documentation/Cocoa/Conceptual/CoreData/Articles/cdRelationships.html#//apple_ref/doc/uid/TP40001857-SW5

Мисля, че просто не "разбирам" как се използват Fetched Properties - и прекарах доста часа в търсене на примери без истински късмет.

Начинът, по който мисля за него,

Имам следните Предприятия, всяко в различен магазин Foo с атрибут relatedBarName в магазина А бар с атрибут barName в магазина B

Трябва да създам извлечен имот на Foo с име findRelatedBar това се отнася Foo да се бар свободно през barName = relatedBarName.

Обаче не разбирам как след това Foo и бар са в различни магазини как да декларирам всякакви отношения от какъвто и да е вид, независимо дали чрез извлеченото свойство или не, от Foo да се бар?

Създателят на предикати в XCode изглежда иска aДестинация. Ако те са в различни схеми, как можете да декларирате дестинацията? Ако не декларирате дестинация, как по време на изпълнение посочвате това findRelatedBar за Foo описва бар?

В противен случай трябва ли да са в една и съща схема, но просто да се съхраняват в различни магазини?

  • При изработката на този въпрос се сетих за тезивъпроси и сам им отговорих чрез по-фокусирано разглеждане на документацията. Предполагам, че ако намеря за объркващо, може и други, така че аз ще ги очертая с тази публикация, за да улесня намирането на свързани отговори на извлечените свойства / основните хранилища на данни.

Q) Ако координаторът на магазин има повече от един магазин, свързан с него на една и съща схема, как вмъкванията знаят в кой магазин да се вмъкнат?

А) Използвате метода назначениеObject: toPersistentStore: в контекста на управлявания обект.

Q) Какво прави FETCH_SOURCE се отнасят конкретно?

A) Това е просто управляваният обект, който има извлеченото свойство, свързано с него.себе си"

Q) Какво прави FETCHED_PROPERTY се отнасят конкретно?

A) Това е препратка към извлеченото свойствоописания пример, с който използвате заявка - можете да го използвате, за да вмъкнете замяна на променлива заявка. Чрез задаване на свойство (както в примера за програмиране на основни данни) в userInfo на инстанцията за описание на свойството, който използвате, можете да вмъкнете тази стойност в израза.

Благодаря!!!!

Отговори:

0 за отговор № 1

Отговорът е:

Да, трябва да направите кръстосан магазинсобственост със споделени схеми. Ако направите това, трябва да се уверите, че приписвате вложките с метода назначаване наObject ::, както е описано във въпроса. Поради ограниченията на постоянния магазин на SQLLITE, естествените неща като IN $ FETCH_SOURCE.attribute не работят.


0 за отговор № 2

Q) Ако координаторът на магазина има повече повече от един магазин, свързан с него на същата схема, как се правят вмъквания знаете в кой магазин да вмъкнете?

За това са предназначени конфигурациите. Вие създавате конфигурация за всеки магазин и след това присвоявате обекти на тази конфигурация. След това създавате магазина с правилната конфигурация. Когато запазите контекста, всяко образувание автоматично ще отиде в правилния магазин.