Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / спроектировать связи / 7 сообщений из 7, страница 1 из 1
15.07.2015, 15:48
    #39008005
crause
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
Таблица "Группы пользователей"
Код: sql
1.
2.
3.
4.
5.
create table groups
(
id_group bigserial primary key,
title caption
);



Таблица "Основные вкладки"
Код: sql
1.
2.
3.
4.
5.
create table ui_mainpage
(
id_mainpage bigserial primary key,
title caption
);



Для каждой группы пользователя, свой набор основных вкладок.

Необходимо красиво связать группы и основные вкладки.

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

ну и каким удобно способом ставим галочки на использование в каждой группе.


Может есть какое то другое изящное решение?
...
Рейтинг: 0 / 0
15.07.2015, 16:08
    #39008033
Злой Бобр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
crauseМожет есть какое то другое изящное решение?
Дайте пользователю самому выбирать нужные ему вкладки. У каждого свои вкусы и угадывать дело весьма неблагодарное. А так пользователь сам может настроить все что ему нужно. При добавлении пользователя включайте все вкладки, а дальше пусть пользователь сам разруливает как ему удобней.
...
Рейтинг: 0 / 0
15.07.2015, 16:30
    #39008059
Кот Матроскин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
crauseТаблица "Группы пользователей"
Код: sql
1.
2.
3.
4.
5.
create table groups
(
id_group bigserial primary key,
title caption
);



Таблица "Основные вкладки"
Код: sql
1.
2.
3.
4.
5.
create table ui_mainpage
(
id_mainpage bigserial primary key,
title caption
);



Для каждой группы пользователя, свой набор основных вкладок.

Необходимо красиво связать группы и основные вкладки.

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

ну и каким удобно способом ставим галочки на использование в каждой группе.


Может есть какое то другое изящное решение?

Непонятно зачем нужно держать в таблице связей записи со значением флага "не используется". Если этого не делать - первые два из Ваших трех шагов не нужны.
Запись в таблицу связей имеет смысл заносить в момент "установки галочки" для соответствующей группы на соответствующей вкладке.
...
Рейтинг: 0 / 0
15.07.2015, 16:32
    #39008061
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
crause
Может есть какое то другое изящное решение?

А чем тебе это решение менее изящное ?

Таблица связи -- единственное правильное решение, оно же самое изящное, других просто нет.
...
Рейтинг: 0 / 0
15.07.2015, 16:42
    #39008076
Кот Матроскин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
MasterZivТаблица связи -- единственное правильное решение, оно же самое изящное, других просто нет.

Не все таблицы связей одинаково полезны.
...
Рейтинг: 0 / 0
15.07.2015, 17:53
    #39008147
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
Кот Матроскин,

Да нет, все.
...
Рейтинг: 0 / 0
15.07.2015, 18:28
    #39008181
Кот Матроскин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
спроектировать связи
MasterZiv,

Т.е. любое решение, в котором есть "таблица связи" - по определению идеальное? :)
Раз они все одинаково полезны?
И нет никакой разницы, как в вышеописанном случае, хранить ли в таблице связей полное перемножение связываемых таблиц, проставляя у некоторых записей-связей флаг "работает", либо только реально существующие связи?
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / спроектировать связи / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]