Перейти к содержанию

Наследование

ORM API инфоблоков позволяет наследовать

Возможность наследования от ORM сущностей элементов появилась с версии 21.500.0 модуля iblock. сущность конкретного инфоблока, а также дополнить или переопределить его поведение. Предусмотрено наследование классов самой сущности и её объекта. Для наследования сущности достаточно указать Table класс инфоблока:

class MyExtTable extends Bitrix\Iblock\Elements\Element{API_CODE}Table
{
}

В имени родительского класса задействован API CODE из настроек инфоблока. Описание класса объекта задается по общим правилам ORM

Все объекты сущностей являются наследниками класса Bitrix\Main\ORM\Objectify\EntityObject, при этом у каждой сущности - свой собственный класс для объектов. По умолчанию, такой класс создается автоматически, на лету.

Подробнее... , включая конфигурирование Table класса:

class MyExtTable extends Bitrix\Iblock\Elements\Element{API_CODE}Table
{
    public static function getObjectClass()
    {
        return MyExt::class;
    }
}

class MyExt extends EO_MyExt
{
}