Таблица-наследник
Источник данных: о сновнойCommunity Edition+Введение
Таблица-наследник — это расширение обычной таблицы. Она подходит для случаев, когда нескольким таблицам данных требуется общий набор полей, а каждой дочерней таблице — собственные специальные поля.
Например, сначала можно создать родительскую таблицу «Активы» для хранения общих полей: инвентарного номера, названия актива, даты приобретения, ответственного и других. Затем на её основе создать дочерние таблицы «Компьютерное оборудование», «Транспортные средства», «Офисная мебель» и другие. Дочерняя таблица наследует структуру полей родительской таблицы и может дополнительно определять собственные поля.
Таблицы-наследники можно создавать только при использовании PostgreSQL в качестве основной базы данных. Другие основные базы данных, внешние базы данных, источники данных REST API и внешние источники данных NocoBase не поддерживают таблицы-наследники.
Сценарии использования
Таблицы-наследники подходят для следующих бизнес-сценариев:
- Родительская таблица активов с дочерними таблицами компьютерного оборудования, транспортных средств и офисной мебели
- Родительская таблица персонала с дочерними таблицами сотрудников, внештатных работников и посетителей
- Родительская таблица дел с дочерними таблицами задач, дефектов и требований
- Родительская таблица договоров с дочерними таблицами договоров закупки, договоров продажи и договоров на обслуживание
Использовать таблицы-наследники целесообразно, если у этих объектов есть стабильный набор общих полей, а различия между дочерними таблицами в основном заключаются в небольшом количестве специальных полей.
Создание и настройка
В основной базе данных нажмите «Create collection», а затем при выборе обычной таблицы или варианта создания с поддержкой наследования выберите родительскую таблицу с помощью Inherits.

Для таблицы-наследника можно использовать способы настройки блоков и полей обычной таблицы. Для блоков страниц она по-прежнему является таблицей данных, записи которой можно создавать, просматривать, изменять и удалять.
Таблицы-наследники подходят для бизнес-объектов с очень похожей структурой. Если бизнес-процессы, права доступа и страницы разных объектов сильно отличаются, обычно понятнее создать отдельные обычные таблицы и связать их с помощью полей связей.
Встроенные поля
Таблица-наследник наследует существующие поля родительской таблицы и может дополнительно добавлять собственные поля.
Поля родительской таблицы влияют на все дочерние таблицы, которые от неё наследуются. Перед изменением полей родительской таблицы убедитесь, что страницы, права доступа, рабочие процессы и API дочерних таблиц не зависят от этих полей.
Поле первичного ключа
Таблице-наследнику, как и обычной таблице, необходимо поле первичного ключа. При создании таблицы рекомендуется сохранить предустановленное поле ID; тип первичного ключа по умолчанию — Snowflake ID (53-bit).
Если в подключённой или синхронизированной таблице-наследнике отсутствует первичный ключ, при редактировании таблицы данных необходимо задать «Record unique key». В противном случае блок страницы может неправильно отображать или редактировать записи.
Использование в настройках страниц
Таблицы-наследники можно использовать в большинстве блоков страниц, поддерживаемых обычными таблицами. Распространённый вариант — настроить каждую дочернюю таблицу как отдельный блок таблицы, формы, подробностей или канбан-доски.
Редактирование настроек
В списке таблиц данных нажмите «Edit» справа от таблицы-наследника, чтобы изменить отображаемое название таблицы данных, категорию, описание, простой режим постраничной навигации, «Record unique key» и другие настройки.
Не рекомендуется часто изменять связи наследования после того, как на их основе уже настроено большое количество бизнес-компонентов. Блоки страниц, поля связей, права доступа и рабочие процессы могут зависеть от текущей структуры полей.
Удаление таблицы данных
В списке таблиц данных нажмите «Delete» справа от таблицы-наследника, чтобы удалить её.
При удалении таб лицы-наследника удаляются метаданные Collection этой дочерней таблицы и фактическая таблица данных в основной базе данных. Перед удалением убедитесь, что эта дочерняя таблица больше не используется блоками страниц, полями связей, правами доступа, рабочими процессами или API.
Удаление таблицы-наследника не означает автоматическое удаление родительской таблицы. Удаление зависимых объектов определяется параметрами подтверждения удаления. Перед выполнением операции убедитесь, что родительскую таблицу и другие дочерние таблицы по-прежнему не требуется сохранять.
Связанные ссылки
- Обычная таблица — общие настройки обычной таблицы
- Основная база данных — поддерживаемые типы баз данных
- Поля таблицы данных — способы настройки полей

