Класс TableRegistry
Обеспечивает реестр/фабрику для объектов Table.
Этот реестр позволяет централизовать конфигурацию таблиц, их подключений и других метаданных.
Настройка экземпляров
Вам может потребоваться настроить объекты таблиц, используя TableRegistry, вы можете централизовать настройку. Любая конфигурация, заданная до создания экземпляров, будет использована при создании экземпляров. Если вы измените конфигурацию после создания экземпляра, экземпляры не будут обновлены.
TableRegistry::config('Users', ['table' => 'my_users']); Данные конфигурации хранятся по псевдониму. Если вы используете одну и ту же таблицу с несколькими псевдонимами, вам нужно будет задать конфигурацию несколько раз.
Получение экземпляров
Вы можете получить экземпляры из реестра, используя get(). Один экземпляр хранится на каждый псевдоним. После того как псевдоним заполнен, будет всегда возвращаться тот же экземпляр. Это используется для того, чтобы ORM использовал меньше памяти и облегчило решение проблем с циклическими ссылками.
$table = TableRegistry::get('Users', $config); Краткое описание свойств
- Класс реализации LocatorInterface по умолчанию.
string - Экземпляр реализации LocatorInterface.
Краткое описание методов
- Прокси для статических вызовов на локатор.
- Очищает реестр от конфигурации и экземпляров.
-
Хранит список параметров, используемых при создании объекта с соответствующим псевдонимом.
- Проверка наличия экземпляра в реестре.
- Получение экземпляра таблицы из реестра.
- Возвращает одиночный экземпляр реализации LocatorInterface.
- Устанавливает и возвращает одиночный экземпляр реализации LocatorInterface.
- Удаляет экземпляр из реестра.
- Устанавливает экземпляр.
- Устанавливает одиночный экземпляр реализации LocatorInterface.
Подробное описание методов
__callStatic()source public static
__callStatic( string $name , array $arguments )
Прокси для статических вызовов на локатор.
Параметры
- string
$name - Имя метода.
- array
$arguments - Аргументы метода.
Возвращаемое значение
mixedclear()source public static deprecated
clear( )
Очищает реестр от конфигурации и экземпляров.
Устарело
3.6.0 Используйте \Cake\ORM\Locator\TableLocator::clear() вместо этого.config()source public static deprecated
config( string|null $alias = null , array|null $options = null )
Хранит список параметров, используемых при создании объекта с соответствующим псевдонимом.
Устарело
3.6.0 Используйте \Cake\ORM\Locator\TableLocator::getConfig()/setConfig() вместо этого.Параметры
- string|null
$aliasнеобязательно null - Имя псевдонима
- array|null
$optionsнеобязательно null - Список параметров для псевдонима
Возвращаемое значение
arrayДанные конфигурации.
exists()source public static deprecated
exists( string $alias )
Проверка наличия экземпляра в реестре.
Устарело
3.6.0 Используйте \Cake\ORM\Locator\TableLocator::exists() вместо этого.Параметры
- string
$alias - Псевдоним для проверки.
Возвращаемое значение
booleanget()source public static deprecated
get( string $alias , array $options = [] )
Получение экземпляра таблицы из реестра.
См. описание параметров в TableLocator::get().
Устарело
3.6.0 Используйте \Cake\ORM\Locator\TableLocator::get() вместо этого.Параметры
- string
$alias - Имя псевдонима, который вы хотите получить.
- array
$optionsнеобязательно [] - Параметры, с которыми вы хотите создать таблицу.
Возвращаемое значение
Cake\ORM\TablegetTableLocator()source public static
getTableLocator( )
Возвращает одиночный экземпляр реализации LocatorInterface.
Возвращаемое значение
Cake\ORM\Locator\LocatorInterfacelocator()source public static deprecated
locator( Cake\ORM\Locator\LocatorInterface $locator = null )
Устанавливает и возвращает одиночный экземпляр реализации LocatorInterface.
Устарело
3.5.0 Используйте getTableLocator()/setTableLocator() вместо этого.Параметры
-
Cake\ORM\Locator\LocatorInterface$locatorнеобязательно null - Экземпляр локатора, который нужно использовать.
Возвращаемое значение
Cake\ORM\Locator\LocatorInterfaceremove()source public static deprecated
remove( string $alias )
Удаляет экземпляр из реестра.
Устарело
3.6.0 Используйте \Cake\ORM\Locator\TableLocator::remove() вместо этого.Параметры
- string
$alias - Псевдоним для удаления.
set()source public static deprecated
set( string $alias , Cake\ORM\Table $object )
Устанавливает экземпляр.
Устарело
3.6.0 Используйте \Cake\ORM\Locator\TableLocator::set() вместо этого.Параметры
- string
$alias - Псевдоним для установки.
-
Cake\ORM\Table$object - Таблица для установки.
Возвращаемое значение
Cake\ORM\TablesetTableLocator()source public static
setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )
Устанавливает одиночный экземпляр реализации LocatorInterface.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocator - Экземпляр локатора, который нужно использовать.
Подробное описание свойств
$_defaultLocatorClasssource
protected static string
Класс реализации LocatorInterface по умолчанию.
'Cake\ORM\Locator\TableLocator'
$_locatorsource
protected static Cake\ORM\Locator\LocatorInterface
Экземпляр реализации LocatorInterface.
© 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/3.6/class-Cake.ORM.TableRegistry.html