Связанные элементы: различия между версиями
Abushyk (обсуждение | вклад) |
Abushyk (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где после выбора конкретной страны набор доступных к выбору регионов усекается до спсика регионов соответствующих выбранной стране. | + | Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где после выбора конкретной страны набор доступных к выбору регионов усекается до спсика регионов соответствующих выбранной стране.<br /> |
− | |||
− | Для установки связи между элементами необходимо у полях Параметры элемента формы указать соответствующие связи. Связи указываются для обеих элементов, как родительского, так и дочернего. | + | Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда от выбора города на форме изменяется набор доступных к выбору Районов и Станций метро, хотя между собой Район и Метро не связаны, они являются дочерними к Городу одновременно.<br /> |
+ | |||
+ | Для установки связи между элементами необходимо у полях Параметры элемента формы указать соответствующие связи. Связи указываются для обеих элементов, как родительского, так и дочернего.<br /> | ||
Для указания связей родительского элемента используется параметр linked. Его значения принимают вид пар связей разделенных чтокой с запятой. Например для поля Город (city_id): | Для указания связей родительского элемента используется параметр 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. | + | где указано, что зависимыми от поля Город являются поля с системными именами street_id и district_id. При чем первый связан с исходным полем своим значением из колонки city_id, а второй - city_id.<br /> |
Если требуется связать только с одним полем, то связка выглядит короче. Например для поля Страна: | Если требуется связать только с одним полем, то связка выглядит короче. Например для поля Страна: | ||
Строка 13: | Строка 14: | ||
Так же необходимо указать обратную связь, от подчиненного элемента к родительскому. Эта связь указывается параметром depended значение которого содержит системное имя родительского поля. Это необходимо для того, что бы подчиненное поле мог сформировать свое содержимое с учетом выбранного значения из родительского поля. Например для Района: | Так же необходимо указать обратную связь, от подчиненного элемента к родительскому. Эта связь указывается параметром depended значение которого содержит системное имя родительского поля. Это необходимо для того, что бы подчиненное поле мог сформировать свое содержимое с учетом выбранного значения из родительского поля. Например для Района: | ||
<pre>city_id</pre> | <pre>city_id</pre> | ||
− | указывает, что поле выбора Района стоит в зависимости от поля Города. | + | указывает, что поле выбора Района стоит в зависимости от поля Города.<br /> |
Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должны быть соблюдена. Движок программно не контролирует целостность связей. | Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должны быть соблюдена. Движок программно не контролирует целостность связей. |
Версия 14:23, 13 июня 2014
Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где после выбора конкретной страны набор доступных к выбору регионов усекается до спсика регионов соответствующих выбранной стране.
Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда от выбора города на форме изменяется набор доступных к выбору Районов и Станций метро, хотя между собой Район и Метро не связаны, они являются дочерними к Городу одновременно.
Для установки связи между элементами необходимо у полях Параметры элемента формы указать соответствующие связи. Связи указываются для обеих элементов, как родительского, так и дочернего.
Для указания связей родительского элемента используется параметр linked. Его значения принимают вид пар связей разделенных чтокой с запятой. Например для поля Город (city_id):
street_id,city_id;district_id,city_id
где указано, что зависимыми от поля Город являются поля с системными именами street_id и district_id. При чем первый связан с исходным полем своим значением из колонки city_id, а второй - city_id.
Если требуется связать только с одним полем, то связка выглядит короче. Например для поля Страна:
region_id,ccountry_id
Так же необходимо указать обратную связь, от подчиненного элемента к родительскому. Эта связь указывается параметром depended значение которого содержит системное имя родительского поля. Это необходимо для того, что бы подчиненное поле мог сформировать свое содержимое с учетом выбранного значения из родительского поля. Например для Района:
city_id
указывает, что поле выбора Района стоит в зависимости от поля Города.
Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должны быть соблюдена. Движок программно не контролирует целостность связей.