Раз уж большинство элементов системы подчинены иерархии, то вполне ожидаемо обнаружить связи между ними. И знаете что? Это связи действительно есть:)
Попробуем для начала рассмотреть структуру некоего сайта.
Будем считать, что для узла "корень сайта" заданы следующие наследуемые параметры:
для узла "страница 1" заданы
для узла "страница 1.1"
для узла "страница 2"
Для "страница 2.1" не задано ничего.
Итак, как же будет вести себя каждый из узлов?
корень сайта
страница 1
страница 1.1
страница 2
страница 2.1
Сложно? Непонятно? Попробую прокомментировать.
Для нормального функционирования узлу нужны три элемента: набор модулей, шаблон и язык отображения (в случае, если языков больше одного). В противном случае, узлу просто нечего будет показывать, а ведь он не для этого создан:) В этом случае недостающие элементы будут запрашиваться у ближайшего родителя. В данную концепцию немного не вписываются статичные модули, но и с ними все становится просто, если запомнить что они наследуются всегда и от всех родителей.
Аналогичная картина при настройке групп пользователей: для группы должны быть указаны права доступа и настройки для каждого модуля. Если их нет, то они наследуются у ближайшей родительской группы и так далее, пока мы не поднимаемся до группы "гости", которая все эти настройки обязательно имеет.
Вот такое вот "дело о наследстве":)
Всего комментариев: 0