method public static

RouteTable::add()

Класс: \Bitrix\Main\UrlPreview\RouteTable

Сигнатура

public static add(array<string|int, mixed> $data) : AddResult

Описание

Добавляет строку в таблицу сущности

Параметры

$data array<string|int, mixed>
Массив с полями вида array( "fields" => array( "FIELD1" => "value1", "FIELD2" => "value2", ), "auth_context" => \Bitrix\Main\Authentication\Context object ) либо просто плоский массив полей. Этот метод использует стратегию по умолчанию, определённую в классе.

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

AddResult

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

RouteTable::add() — метод класса \Bitrix\Main\UrlPreview\RouteTable модуля «Главный модуль». Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_Route, наборы — как EO_Route_Collection. Метод достаётся RouteTable от DataManager::add: поведение общее для всех сущностей, а данные, поля и классы — свои.

Добавляет строку в таблицу RouteTable. Перед записью ORM проверяет поля (checkFields()) и вызывает события; ошибки возвращаются в результате, исключения не бросаются.

use Bitrix\Main\UrlPreview\RouteTable;

$result = RouteTable::add([
    // 'ПОЛЕ' => 'значение' — состав полей см. в getMap()
]);
if ($result->isSuccess()) {
    $id = $result->getId();
} else {
    $errors = $result->getErrorMessages();
}

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

  • getByRoute() Возвращает первую запись, отфильтрованную по значению $route
  • merge() Добавляет маршрут в таблицу маршрутов. Если запись маршрута уже существует, обновляет её.

add() есть и у других классов модуля «Главный модуль»: AccessPermissionTable, AccessRoleRelationTable, AccessRoleTable, AddStrategy, ApplicationPasswordTable, CacheCleanPathTable, CacheTagTable, CacheTracker.

Исходный файл: source/main/lib/urlpreview/route.php:877

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