Spec-Zone.ru › CakePHP 4.4

Класс TableRegistry

Предоставляет реестр/фабрику для объектов Table.

Этот реестр позволяет централизовать конфигурацию таблиц, их соединений и других метаданных.

Настройка экземпляров

Возможно, вам потребуется настроить объекты таблиц. Используя TableLocator, вы можете централизовать конфигурацию. Любая настройка, заданная до создания экземпляров, будет использована при создании экземпляров. Если вы измените конфигурацию после создания экземпляра, экземпляры не будут обновлены.

TableRegistry::getTableLocator()->setConfig('Users', ['table' => 'my_users']);

// Prior to 3.6.0
TableRegistry::config('Users', ['table' => 'my_users']);

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

Получение экземпляров

Вы можете получить экземпляры из реестра через TableLocator::get(). Один экземпляр хранится на псевдоним. После заполнения псевдонима всегда будет возвращаться тот же экземпляр. Это снижает затраты памяти ORM и упрощает решение проблем с циклическими ссылками.

$table = TableRegistry::getTableLocator()->get('Users', $config);

// Prior to 3.6.0
$table = TableRegistry::get('Users', $config);
Пространство имён: Cake\ORM

Краткое описание методов

  • clear() public static deprecated

    Очищает реестр конфигурации и экземпляров.

  • exists() public static deprecated

    Проверяет, существует ли экземпляр в реестре.

  • get() public static deprecated

    Получает экземпляр таблицы из реестра.

  • getTableLocator() public static

    Возвращает одиночный экземпляр реализации LocatorInterface.

  • remove() public static deprecated

    Удаляет экземпляр из реестра.

  • set() public static deprecated

    Устанавливает экземпляр.

  • setTableLocator() public static

    Устанавливает одиночный экземпляр реализации LocatorInterface.

Подробное описание методов

clear() public static

clear(): void

Очищает реестр конфигурации и экземпляров.

Возвращает

void

exists() public static

exists(string $alias): bool

Проверяет, существует ли экземпляр в реестре.

Параметры

string $alias

Псевдоним для проверки.

Возвращает

bool

get() public static

get(string $alias, array<string, mixed> $options = []): Cake\ORM\Table

Получает экземпляр таблицы из реестра.

См. спецификацию опций в {@link TableLocator::get()}.

Параметры

string $alias

Имя псевдонима, который вы хотите получить.

array<string, mixed> $options необязательно

Опции, с которыми вы хотите построить таблицу.

Возвращает

Cake\ORM\Table

getTableLocator() public static

getTableLocator(): Cake\ORM\Locator\LocatorInterface

Возвращает одиночный экземпляр реализации LocatorInterface.

Возвращает

Cake\ORM\Locator\LocatorInterface

remove() public static

remove(string $alias): void

Удаляет экземпляр из реестра.

Параметры

string $alias

Псевдоним для удаления.

Возвращает

void

set() public static

set(string $alias, Cake\ORM\Table $object): Cake\ORM\Table

Устанавливает экземпляр.

Параметры

string $alias

Псевдоним для установки.

Cake\ORM\Table $object

Таблица для установки.

Возвращает

Cake\ORM\Table

setTableLocator() public static

setTableLocator(Cake\ORM\Locator\LocatorInterface $tableLocator): void

Устанавливает одиночный экземпляр реализации LocatorInterface.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator

Экземпляр локатора для использования.

Возвращает

void

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.ORM.TableRegistry.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API