Могу ли я разделить базовую модель данных?
Наше приложение использует API, а его модель данных имеет набор сущностей, которые описывают объекты, возвращаемые этим API, например, категории и местоположения. Он также имеет набор сущностей, которые описывают, как приложение использует эти объекты, например, Избранные категории и Недавние местоположения. Этот второй набор сущностей имеет отношение к первому, например, каждая Любимая категория имеет категорию.
Сейчас мы расширяемся до набора приложений, некоторые из которых будут использовать один и тот же API. Им понадобится модель данных, которая описывает объекты API, поэтому им нужен первый набор объектов, но они могут захотеть использовать их по-другому, поэтому их модель данных не должна включать второй набор объектов.
Можно ли разделить определение модели, чтобы каждый проект мог использовать части, которые они разделяют, а не части, которые они не делают, при сохранении отношений?
1 ответ
Вы не можете иметь отдельные модели, которые имеют отношения к сущностям друг в друге. Что вы можете сделать, это загрузить одну модель и изменить ее (в коде) перед ее использованием. Фактически, вы можете создать NSManagedObjectModel полностью в коде. Графический редактор в Xcode намного проще в использовании, чем создавать его в коде.