Связанные элементы: различия между версиями
Abushyk (обсуждение | вклад) |
Kondin (обсуждение | вклад) |
||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 6: | Строка 6: | ||
− | Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где после выбора конкретной страны набор доступных к выбору регионов усекается до | + | Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где, после выбора конкретной страны, набор доступных к выбору регионов усекается до списка регионов, соответствующих выбранной стране.<br /> |
− | Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда от выбора города на форме изменяется набор доступных к выбору Районов и Станций метро, хотя между собой Район и Метро не связаны | + | Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда, от выбора города на форме, изменяется набор, доступных к выбору, Районов и Станций метро, хотя, между собой, Район и Метро не связаны - они являются дочерними к Городу одновременно.<br /> |
− | Для установки связи между элементами необходимо | + | Для установки связи между элементами необходимо в полях Параметры элемента формы указать соответствующие связи. Связи указываются для обеих элементов, как родительского, так и дочернего.<br /> |
− | Для указания связей родительского элемента используется параметр '''linked'''. Его значения принимают вид пар связей разделенных | + | Для указания связей родительского элемента используется параметр '''linked'''. Его значения принимают вид пар связей разделенных точкой с запятой. Например, для поля Город (city_id): |
<pre>street_id,city_id;district_id,city_id</pre> | <pre>street_id,city_id;district_id,city_id</pre> | ||
− | где указано, что зависимыми от поля Город являются поля с системными именами street_id и district_id. При чем первый связан с исходным полем своим значением из колонки city_id, а второй - city_id.<br /> | + | где указано, что зависимыми от поля Город являются поля с системными именами street_id и district_id. При чем, первый связан с исходным полем своим значением из колонки city_id, а второй - city_id.<br /> |
'''Пробелы в строке значения параметра не допускаются.'''<br /> | '''Пробелы в строке значения параметра не допускаются.'''<br /> | ||
− | Если требуется связать только с одним полем, то связка выглядит короче. Например для поля Страна: | + | Если требуется связать только с одним полем, то связка выглядит короче. Например, для поля Страна: |
<pre>region_id,country_id</pre> | <pre>region_id,country_id</pre> | ||
− | Так же необходимо указать обратную связь, от подчиненного элемента к родительскому. Эта связь указывается параметром '''depended''' значение которого содержит системное имя родительского поля. Это необходимо для того, что бы подчиненное поле | + | Так же необходимо указать обратную связь, от подчиненного элемента к родительскому. Эта связь указывается параметром '''depended''', значение которого содержит системное имя родительского поля. Это необходимо для того, что бы подчиненное поле могло сформировать свое содержимое с учетом выбранного значения из родительского поля. Например, для Района: |
<pre>city_id</pre> | <pre>city_id</pre> | ||
указывает, что поле выбора Района стоит в зависимости от поля Города.<br /> | указывает, что поле выбора Района стоит в зависимости от поля Города.<br /> | ||
− | Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и | + | Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должно быть соблюдено. Движок программно не контролирует целостность связей. |
+ | |||
+ | <br/> | ||
+ | Обсудить на форуме http://www.etown.ru/s/topic/782-%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0-%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%B8%D0%B5-%D1%81%D1%83%D1%89%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D0%B8-%D1%81%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD/ |
Текущая версия на 17:06, 21 ноября 2015
Находится в тестовом режиме.
Требует включения режима Off system Ajax (Настройки - Дополнительно)
Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где, после выбора конкретной страны, набор доступных к выбору регионов усекается до списка регионов, соответствующих выбранной стране.
Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда, от выбора города на форме, изменяется набор, доступных к выбору, Районов и Станций метро, хотя, между собой, Район и Метро не связаны - они являются дочерними к Городу одновременно.
Для установки связи между элементами необходимо в полях Параметры элемента формы указать соответствующие связи. Связи указываются для обеих элементов, как родительского, так и дочернего.
Для указания связей родительского элемента используется параметр linked. Его значения принимают вид пар связей разделенных точкой с запятой. Например, для поля Город (city_id):
street_id,city_id;district_id,city_id
где указано, что зависимыми от поля Город являются поля с системными именами street_id и district_id. При чем, первый связан с исходным полем своим значением из колонки city_id, а второй - city_id.
Пробелы в строке значения параметра не допускаются.
Если требуется связать только с одним полем, то связка выглядит короче. Например, для поля Страна:
region_id,country_id
Так же необходимо указать обратную связь, от подчиненного элемента к родительскому. Эта связь указывается параметром depended, значение которого содержит системное имя родительского поля. Это необходимо для того, что бы подчиненное поле могло сформировать свое содержимое с учетом выбранного значения из родительского поля. Например, для Района:
city_id
указывает, что поле выбора Района стоит в зависимости от поля Города.
Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должно быть соблюдено. Движок программно не контролирует целостность связей.