156  /  382
Справочник

Восстановление (wakeUp)

Просмотров: 28263
Дата последнего изменения: 27.10.2020
Татьяна Старкова
Сложность урока:
4 уровень - сложно, требуется сосредоточиться, внимание деталям и точному следованию инструкции.
1
2
3
4
5
Недоступно в лицензиях:
Ограничений нет

Если у вас уже есть данные записи, для инициализации объекта необязательно выбирать их повторно из базы данных. Объект можно восстановить, имея как минимум значения первичного ключа:

$book = \Bitrix\Main\Test\Typography\Book::wakeUp(1);

Указывать можно не только первичный ключ, но и частичный или полный набор данных:

$book = \Bitrix\Main\Test\Typography\Book::wakeUp(['ID' => 1, 'TITLE' => 'Title 1', 'PUBLISHER_ID' => 253]);

Аналогично созданию объектов, метод актуален и для EO_ классов, и для вызова непосредственно из entity:

// свой класс
$book = \Bitrix\Main\Test\Typography\Book::wakeUp(
	['ID' => 1, 'TITLE' => 'Title 1']
);

// системный класс
$book = \Bitrix\Main\Test\Typography\EO_Book::wakeUp(
	['ID' => 1, 'TITLE' => 'Title 1']
);

// через фабрику entity
$book = \Bitrix\Main\Test\Typography\BookTable::wakeUpObject(
	['ID' => 1, 'TITLE' => 'Title 1']
);

В wakeUp можно передавать не столько скалярные значения, но и значения Отношений:

$book = \Bitrix\Main\Test\Typography\Book::wakeUp([
	'ID' => 2,
	'TITLE' => 'Title 2',
	'PUBLISHER' => ['ID' => 253, 'TITLE' => 'Publisher Title 253'],
	'AUTHORS' => [
		['ID' => 17, 'NAME' => 'Name 17'],
		['ID' => 18, 'NAME' => 'Name 18']
	]
]);


16
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии