Связанные связи

Все вопросы/проблемы по установке и использовании.
Ответить
tommy.felt
Сообщения: 88
Зарегистрирован: 01 июн 2016, 12:54
Имя: Валентин Наговицын
Откуда: Глазов, Удмуртия, Россия

Связанные связи

Сообщение tommy.felt »

Добрый день!

Есть сущность "дом", она связана с сущностью "двор", которая связана с сущностью "квартал".
Как сделать так, чтобы на странице дома отображался квартал, к которому принадлежит двор?

В конечном итоге хотелось бы создать следующую цепочку:
Подъезд -- Дом -- Двор -- Квартал -- Микрорайон -- Округ -- Город

Спасибо.
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Связанные связи

Сообщение support »

Вопрос не ясен, предоставьте скриншоты где и что нужно отображать, пожалуйста.
tommy.felt
Сообщения: 88
Зарегистрирован: 01 июн 2016, 12:54
Имя: Валентин Наговицын
Откуда: Глазов, Удмуртия, Россия

Re: Связанные связи

Сообщение tommy.felt »

support писал(а):Вопрос не ясен, предоставьте скриншоты где и что нужно отображать, пожалуйста.
Вложения
Дом.png
Двор.png
Квартал.png
Аватара пользователя
nikorn
Сообщения: 252
Зарегистрирован: 02 апр 2016, 22:26
Имя: Корняков Никита
Откуда: РФ, Ярославль
Организация: Тяжмаштрейд
Контактная информация:

Re: Связанные связи

Сообщение nikorn »

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

1) Если есть возможность, то лучше использовать вложенные сущности, а не связи (так как вложенная сущность - это связь "один ко многим", а связь - это "один к одному")

2) Вложенность сущностей не должна быть более двух, то есть Микрорайон->Дом->Подъезд. В противном случае картина начинает рассыпаться.

3) Если п. 1 выполнить не получается, то нужно менять логику программы, отбрасывая не нужное и объединяя близкие сущности. Например, у меня была цепочка Контрагент->Юридическое лицо->Договор->Спецификация->Накладная. И это было ужасно. В результате удалось все свести к цепочке Контрагент->Заказ->Документ

4) Если ни п. 1, ни п. 2 выполнить не удается, то нужно ждать, когда автор реализует иерархический просмотр. :)
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Связанные связи

Сообщение support »

nikorn писал(а): 1) Если есть возможность, то лучше использовать вложенные сущности, а не связи (так как вложенная сущность - это связь "один ко многим"....
Все верно. Я как раз сейчас занимаюсь видео-обзором где расскажу какие связи есть и как создать приложение на примере с нуля и где какие связи лучше применять в конкретном случаи.

Что касается "Подъезд -- Дом -- Двор -- Квартал -- Микрорайон -- Округ -- Город" то так сложно что то советовать. Нужно знать реальные данные и то как они меняются. Может что то можно вынести в глобальные списки, что то как вложенная сущность, а что то связать используя поле Сущность.
tommy.felt
Сообщения: 88
Зарегистрирован: 01 июн 2016, 12:54
Имя: Валентин Наговицын
Откуда: Глазов, Удмуртия, Россия

Re: Связанные связи

Сообщение tommy.felt »

support писал(а):
nikorn писал(а): 1) Если есть возможность, то лучше использовать вложенные сущности, а не связи (так как вложенная сущность - это связь "один ко многим"....
Что касается "Подъезд -- Дом -- Двор -- Квартал -- Округ -- Микрорайон -- Город" то так сложно что то советовать. Нужно знать реальные данные и то как они меняются. Может что то можно вынести в глобальные списки, что то как вложенная сущность, а что то связать используя поле Сущность.
Хочется, чтобы человек зашедший на страницу своего дома осознал сопричастность к другим локальным сообществам.
Для этого нужно выводить на нее все вышеперечисленные сущности.
Прелесть связанных сущностей в том, что они соотносятся друг с другом, это очень удобно.
Если ими не пользоваться получится, что каждому из 800 (в перспективе) домов заполнять заполнять по 4 поля с сущностями, и потом еще в каждую из них добавить этот дом, что нереально.

Было бы здорово связать округа с микрорайонами, кварталы с округами, дворы с кварталами, и чтобы оставалось только добавить дом ко двору и вся цепочка автоматически выстраивалась.

Вложенные сущности не получится использовать из-за того, что получается очень странная иерархия:
- Город
-- Предложения
-- Голосвания
-- Микрорайоны
--- Предложения
--- Голосования
--- Округа
---- Предложения
---- Голосования
---- Кварталы
------ Предложения
------ Голосования
------ Дворы
------- etc...
И самое страшное, эти неравнозначные подсущности будут выводиться в одном навбаре, а так выводятся в отдельном блоке.

Поэтому пока я склоняюсь к тому, чтобы написать костыль, для специального отображения связей на определенных страницах.
Аватара пользователя
nikorn
Сообщения: 252
Зарегистрирован: 02 апр 2016, 22:26
Имя: Корняков Никита
Откуда: РФ, Ярославль
Организация: Тяжмаштрейд
Контактная информация:

Re: Связанные связи

Сообщение nikorn »

Для адресов (город, микрорайон, квартал, улица, двор, дом, подъезд), думаю, правильно было бы использовать глобальный список. Причем, его, наверное, можно подтянуть из всероссийского справочника КЛАДР.
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Связанные связи

Сообщение support »

Предлагаю ознакомится с видео-обзором где я подробно, на примере, рассказал какие связи есть и как их можно использовать и затронул тему с большим количеством вложенных сущноестей.
https://youtu.be/bRK56gkz6zA

Никита верно говорит, кое что можно поместить в общие списки, кое что как отдельные сущности и связать полем Сущность...
tommy.felt
Сообщения: 88
Зарегистрирован: 01 июн 2016, 12:54
Имя: Валентин Наговицын
Откуда: Глазов, Удмуртия, Россия

Re: Связанные связи

Сообщение tommy.felt »

nikorn писал(а):Для адресов (город, микрорайон, квартал, улица, двор, дом, подъезд), думаю, правильно было бы использовать глобальный список. Причем, его, наверное, можно подтянуть из всероссийского справочника КЛАДР.
Адреса да.
Некоторой проблемой является отсутствие импорта списков, но думаю это можно решить напрямую в БД.
+ тут я уже плюсовал возможность подгружать поля в зависимости от ранее выбраного значения...
Однако, на самом деле это не так важно, ибо в ту же ГИС ЖКХ импортируется только индефикатор ФИАС, а адрес пишется в свободной форме, но, конечно стоит добавить, для аккуратности оформления.

Но главное, почему нужны именно сущности -- это то, что каждый двор, квартал, округ являются локальными сообществами со своими обсуждениями и задачами.)
tommy.felt
Сообщения: 88
Зарегистрирован: 01 июн 2016, 12:54
Имя: Валентин Наговицын
Откуда: Глазов, Удмуртия, Россия

Re: Связанные связи

Сообщение tommy.felt »

support писал(а):Предлагаю ознакомится с видео-обзором где я подробно, на примере, рассказал какие связи есть и как их можно использовать и затронул тему с большим количеством вложенных сущноестей.
https://youtu.be/bRK56gkz6zA
Видео будет очень полезно новым пользователям, и сэкономило бы один мой рабочий день.
Сначала я избегал поле сущность, ибо с ходу не совсем понятно, и пытался сделать через вложеность, но быстро понял, что это неверный путь и переструктурировал приложение.
Единственный момент: у меня группы сотрудников -- отдельная сущность, у которой есть подсущность Задачи.
И получается, что руководитель на главной странице нажимет кнопку "Добавить задачу" и ему сразу предлагается группа, кому ее назначить.
Ответить