Класс TableLocator
Предоставляет реестр/фабрику по умолчанию для объектов Table.
- Cake\ORM\Locator\TableLocator реализует Cake\ORM\Locator\LocatorInterface
Краткое описание свойств
-
$_configprotectedКонфигурация псевдонимов.array -
$_fallbackedprotectedСодержит список объектов Table, которые были созданы из встроенного класса Table. Список индексируется по псевдониму таблицы.
- Экземпляры, принадлежащие реестру.
$_instancesprotected -
$_optionsprotectedСодержит список параметров, которые были переданы методу get().array
Краткое описание методов
- _create() protectedОбёртка для создания экземпляров таблиц
- _getClassName() protectedПолучение имени класса таблицы.
- clear() publicОчистка реестра от конфигурации и экземпляров.
- config() public
Хранит список параметров, которые будут использоваться при создании объекта с соответствующим псевдонимом.
- exists() publicПроверка наличия экземпляра в реестре.
- genericInstances() public
Возвращает список таблиц, созданных этим реестром, которые не могли быть созданы из конкретного подкласса. Этот метод полезен для отладки распространённых ошибок при настройке ассоциаций или создании новых классов таблиц.
- get() publicПолучение экземпляра таблицы из реестра.
- getConfig() publicВозвращает конфигурацию для псевдонима или весь массив конфигурации для всех псевдонимов.
- remove() publicУдаление экземпляра из реестра.
- set() publicУстановка экземпляра.
- setConfig() public
Хранит список параметров, которые будут использоваться при создании объекта с соответствующим псевдонимом.
Подробное описание методов
_create()source protected
_create( array $options )
Обёртка для создания экземпляров таблиц
Параметры
- массив
$options - Псевдоним для проверки.
Возвращает
Cake\ORM\Table_getClassName()source protected
_getClassName( string $alias , array $options [] )
Получение имени класса таблицы.
Параметры
- строка
$alias - Имя псевдонима, которое вы хотите получить.
- массив
$optionsнеобязательно [] - Массив параметров таблицы.
Возвращает
строкаclear()source public
clear( )
Очистка реестра от конфигурации и экземпляров.
Реализация
Cake\ORM\Locator\LocatorInterface::clear() config()source public
config( string|array|null $alias null , array|null $options null )
Хранит список параметров, которые будут использоваться при создании объекта с соответствующим псевдонимом.
Параметры, которые могут быть сохранены, — те, которые распознаются get() Если второй аргумент опущен, он вернёт текущие настройки для $alias.
Если не переданы никакие аргументы, он вернёт весь массив конфигурации для всех псевдонимов.
Устарело
3.4.0 Используйте setConfig()/getConfig() вместо этого.Параметры
- строка|массив|null
$aliasнеобязательно null - Имя псевдонима
- массив|null
$optionsнеобязательно null - Список параметров для псевдонима
Возвращает
массивДанные конфигурации.
Исключение
RuntimeExceptionПри попытке конфигурирования существующего экземпляра таблицы.
Реализация
Cake\ORM\Locator\LocatorInterface::config() exists()source public
exists( string $alias )
Проверка наличия экземпляра в реестре.
Параметры
- строка
$alias - Псевдоним для проверки.
Возвращает
логическое значениеРеализация
Cake\ORM\Locator\LocatorInterface::exists() genericInstances()source public
genericInstances( )
Возвращает список таблиц, созданных этим реестром, которые не могли быть созданы из конкретного подкласса. Этот метод полезен для отладки распространённых ошибок при настройке ассоциаций или создании новых классов таблиц.
Возвращает
Cake\ORM\Table[]get()source public
get( string $alias , array $options [] )
Получение экземпляра таблицы из реестра.
Таблицы создаются только один раз до очистки реестра. Это означает, что псевдонимы должны быть уникальными в вашем приложении. Это важно, поскольку ассоциации таблиц разрешаются во время выполнения, и циклические ссылки необходимо обрабатывать правильно.
Параметры, которые можно передать, такие же, как в Cake\ORM\Table::__construct(), но также распознаётся ключ className.
Параметры
-
classNameОпределите конкретное имя класса для использования. Если не определено, CakePHP сгенерирует имя класса на основе псевдонима. Например, 'Users' приведёт к использованиюApp\Model\Table\UsersTableЕсли этот класс не существует, будет использоваться класс по умолчаниюCake\ORM\Table. Установив параметрclassName, вы можете определить конкретный класс для использования. Параметр className поддерживает краткие ссылки на классы плагинов Cake\Core\App::shortName(). -
tableОпределите имя таблицы для использования. Если не определено, этот параметр будет по умолчанию устанавливаться в нижнем регистре с подчеркиваниями по имени псевдонима. -
connectionВнедрить конкретный объект соединения для использования. Если этот параметр иconnectionNameне определены, будет вызван методdefaultConnectionName()класса таблицы для получения имени соединения. -
connectionNameОпределите имя соединения для использования. Наименованное соединение будет получено из Cake\Datasource\ConnectionManager.
Примечание Если ваш $alias использует синтаксис плагина, только имя части будет использоваться как ключ в реестре. Это означает, что если два плагина или плагин и приложение предоставляют один и тот же псевдоним, реестр будет хранить только первый экземпляр.
Параметры
- строка
$alias - Имя псевдонима, которое вы хотите получить.
- массив
$optionsнеобязательно [] Параметры, с которыми вы хотите создать таблицу. Если таблица уже загружена, параметры будут проигнорированы.
Возвращает
Cake\ORM\TableИсключение
RuntimeExceptionПри попытке конфигурировать псевдоним, который уже существует.
Реализация
Cake\ORM\Locator\LocatorInterface::get() getConfig()source public
getConfig( string|null $alias null )
Возвращает конфигурацию для псевдонима или весь массив конфигурации для всех псевдонимов.
Параметры
- строка|null
$aliasнеобязательно null - Псевдоним для получения конфигурации, null для полной конфигурации.
Возвращает
массивДанные конфигурации.
remove()source public
remove( string $alias )
Удаляет экземпляр из реестра.
Параметры
- строка
$alias - Псевдоним для удаления.
Реализация
Cake\ORM\Locator\LocatorInterface::remove() set()source public
set( string $alias , Cake\ORM\Table $object )
Устанавливает экземпляр.
Параметры
- строка
$alias - Псевдоним для установки.
-
Cake\ORM\Table$object - Таблица для установки.
Возвращает
Cake\ORM\TableРеализация
Cake\ORM\Locator\LocatorInterface::set() setConfig()source public
setConfig( string|array $alias , array|null $options null )
Хранит список параметров, используемых при создании объекта с соответствующим псевдонимом.
Параметры
- строка|массив
$alias - Имя псевдонима или массив для полного перезаписи текущей конфигурации.
- массив|null
$optionsнеобязательно null - список параметров для псевдонима
Возвращает
$this
Исключения
RuntimeExceptionПри попытке настроить существующий экземпляр таблицы.
Подробности свойств
$_fallbackedsource
protected Cake\ORM\Table[]
Содержит список объектов Table, которые были созданы из встроенного класса Table. Список индексируется по псевдониму таблицы
[]
© 2005–2017 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.4/class-Cake.ORM.Locator.TableLocator.html