Связанные элементы: различия между версиями

Материал из CMS Sitebill Wiki
Перейти к навигации Перейти к поиску
Строка 6: Строка 6:
  
  
Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где после выбора конкретной страны набор доступных к выбору регионов усекается до спсика регионов соответствующих выбранной стране.<br />
+
Связанные элементы - элементы модели, которые на форме обладают характером связанных сущностей. Самый привычный пример - это поле выбора Страна и поле выбора Регион, где, после выбора конкретной страны, набор доступных к выбору регионов усекается до списка регионов, соответствующих выбранной стране.<br />
  
Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда от выбора города на форме изменяется набор доступных к выбору Районов и Станций метро, хотя между собой Район и Метро не связаны, они являются дочерними к Городу одновременно.<br />
+
Связь может быть единичной, как в случае Страна-Регион, так и множественной, когда, от выбора города на форме, изменяется набор, доступных к выбору, Районов и Станций метро, хотя, между собой, Район и Метро не связаны - они являются дочерними к Городу одновременно.<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.<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 />
  
Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должны быть соблюдена. Движок программно не контролирует целостность связей.
+
Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должно быть соблюдено. Движок программно не контролирует целостность связей.

Версия 19:43, 21 июня 2014

Находится в тестовом режиме.

Требует включения режима 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

указывает, что поле выбора Района стоит в зависимости от поля Города.

Взаимное указание зависимостей родительского и подчиненного элементов обуславливает целостность связи и должно быть соблюдено. Движок программно не контролирует целостность связей.