Моделирование головоломки общей сущности - PullRequest
0 голосов
/ 23 декабря 2009

В моем домене есть следующие объекты:

Проект
Задача
Пользователь
Контекст

Пользователь может иметь несколько проектов, задач и контекстов. Проект может иметь задачи и контексты, а задача может иметь контексты.

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

Любая помощь будет признательна, спасибо заранее ...

1 Ответ

1 голос
/ 23 декабря 2009

Немного зависит от назначения таблицы контекста. Можно ли создать созданный контекст для совместного использования пользователем, задачей или проектом? Если это так, то таблица отношений «многие ко многим» может помочь для каждого из различных объединений. Таким образом, UserContext, ProjectContext, TaskContext таблица. В них будут только первичные ключи двух таблиц и, возможно, временная метка.

Если вы не передаете какой-либо контент другим таблицам, так что каждая ссылка уникальна для того, кто его создает, вы можете просто добавить тип контекста в микс. Таким образом, таблица ContextType будет добавлена ​​к миксу. Вы по-прежнему хотели бы иметь таблицу отношений, чтобы у человека могло быть несколько контекстов и т. Д. Итак, тогда у вас может быть ContextRelationshipTable, который связывает внешний ключ из родительской таблицы с контекстной таблицей, и вы можете использовать тип в качестве фильтра.

Однако я, вероятно, просто использовал бы подход «многие ко многим» и просто имел бы таблицы (ссылок) ссылок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...