method public static

ExtraTable::createObject()

Класс: \Bitrix\Catalog\ExtraTable

Сигнатура

public static createObject([mixed $setDefaultValues = = 'true' ]) : EO_Extra

Параметры

$setDefaultValues mixed = = 'true'

Возвращаемое значение

EO_Extra

Как применяется в ExtraTable

ExtraTable::createObject() — метод класса \Bitrix\Catalog\ExtraTable модуля «Торговый каталог». Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_Extra, наборы — как EO_Extra_Collection. Метод достаётся ExtraTable от DataManager::createObject: поведение общее для всех сущностей, а данные, поля и классы — свои.

Создаёт новый объект ExtraTable (EO_Extra): поля заполняются сеттерами, запись в БД — методом save().

use Bitrix\Main\Loader;
use Bitrix\Catalog\ExtraTable;

Loader::includeModule('catalog');

$item = ExtraTable::createObject();
$item->set('NAME', 'name');
$item->set('PERCENTAGE', 1.5);
$result = $item->save();

Поля сущности ExtraTable

ПолеТипСвойства
IDintобязательное
NAMEstring(50)обязательное
PERCENTAGEdoubleобязательное

Список — из описания класса в исходном коде; точный состав в вашей версии вернёт ExtraTable::getEntity()->getFields().

Собственные методы ExtraTable

  • getExtraList() Возвращает кешированный список надбавок.

createObject() есть и у других классов модуля «Торговый каталог»: CatalogIblockTable, CatalogViewedProductTable, DiscountCouponTable, DiscountModuleTable, DiscountRestrictionTable, DiscountTable, GroupAccessTable, GroupLangTable.

Исходный файл: source/catalog/lib/extra.php

Что будем искать? Например,Продвижение