TableRef — различия между версиями
Lan (обсуждение | вклад) (Новая страница: «{{ElementType|com.beanexplorer.enterprise.metadata.model.TableRef|нет}} '''Ссылка на ключ в другой таблице''' (TableRef) позво…») |
Lan (обсуждение | вклад) |
||
Строка 19: | Строка 19: | ||
to: addresses.dummy | to: addresses.dummy | ||
view: City from KLADR | view: City from KLADR | ||
− | Здесь создаётся ссылка с tableFrom = users, columnFrom = kladr::search::city, tableTo = addresses, columnTo = dummy, view = City from KLADR (такое представление должно существовать в сущности addresses, иначе будет предупреждение при [[синхронизации]]). | + | Здесь создаётся ссылка с tableFrom = users, columnFrom = kladr::search::city, tableTo = addresses, columnTo = dummy, view = City from KLADR (такое представление должно существовать в сущности addresses, иначе будет предупреждение при [[синхронизация|синхронизации]]). |
buildings: | buildings: |
Версия 16:15, 19 сентября 2014
- Класс
TableRef
- Поддерживает документацию
- нет
- Поддерживает extras
- нет
Ссылка на ключ в другой таблице (TableRef) позволяет устанавливать вспомогательные связи между таблицами, которые могут использоваться операциями, например, для заполнения выпадающих списков. Связь имеет следующие свойства:
- tableFrom: исходная сущность. Это та сущность, в которой связь объявлена.
- columnFrom: исходная колонка. В данном случае это псевдо-колонка (например, kladr::search::street). Если вы хотите установить связь к существующей колонке, это необходимо сделать непосредственно в определении колонки.
- tableTo: целевая сущность.
- columnTo: целевая колонка. Может быть не указана, тогда автоматически используется первичный ключ целевой сущности.
- view: имя представления в целевой сущности, которое используется для выбора элементов. По умолчанию — *** Selection view ***.
Ссылки располагаются в дереве проекта в папке References внутри сущности. Имя ссылки формируется автоматически по имени колонки и целевой сущности.
Ссылки сериализуются в yaml-файл сущности в секцию references. В качестве ключа указывается columnFrom. Свойства tableTo и columnTo сериализуются в одно поле to через точку. Если кроме поля to ничего нет, можно имя поля опустить.
Примеры
users: references: kladr::search::city: to: addresses.dummy view: City from KLADR
Здесь создаётся ссылка с tableFrom = users, columnFrom = kladr::search::city, tableTo = addresses, columnTo = dummy, view = City from KLADR (такое представление должно существовать в сущности addresses, иначе будет предупреждение при синхронизации).
buildings: references: buildingID: buildings
Здесь создаётся ссылка с tableFrom = buildings, columnFrom = buildingID, tableTo = buildings, columnTo = ID (первичный ключ у таблицы buildings), view = *** Selection view *** (по умолчанию).