2014-01-25 4 views
2

Я создал базу данных, в которой я должен хранить контакты в различных категориях. Проблема возникает, когда я должен создать Подкатегории в категории, как: -Вложенная проблема в основных данных

Категории -> Sub> категории-Контакты

Но Категории могут также иметь контакты как

Категории -> Контакты

, где подкатегории могут также иметь контакты. Я понял, что будет использоваться вложенность в основные данные. Как я могу достичь такого рода отношений? Как сохранить подкатегории в категориях, даже если они имеют один и тот же объект?

Я приложил свою основную модель отношений сущности данных здесь: -

enter image description here

ответ

1

Там нет никаких проблем создания «я», ссылающиеся отношений в CoreDate.
Другими словами, сущность может иметь отношения своего рода.

Единственная разница в вашем случае между Category и SubCategory - это существование объекта parent.
Таким образом, нет необходимости определять новый объект для этой части.

Вы можете просто определить зависимость:

Category. parent типа Category (скажем, к-одному, в данном случае)

и обратной взаимосвязи:

Category. subCategories тип NSSet (для многих в этом случае), содержащий Category объектов.

Вы можете установить все это в своем построителе интерфейса.

Теперь, поскольку Category имеет отношения с Contact, так и все «подкатегории» будут иметь эти отношения.

Если вы хотите, чтобы ваши «подкатегории» имели дополнительные свойства, просто создайте новый объект, чтобы он наследовал от вашего объекта (соблюдая описанную выше настройку).
и добавить к нему новые свойства.

+0

Итак, вы имеете в виду, что я создаю отношение к одной и той же сущности категории из самой категории? – IronManGill

+0

да, так же просто, как это –

Смежные вопросы