Класс 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Очистка реестра от конфигурации и экземпляров.
-
Хранит список опций, используемых при создании объекта с соответствующим псевдонимом.
- 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 deprecated
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 )
Удаляет экземпляр из реестра.
Параметры
- string
$alias - Псевдоним для удаления.
Реализация
Cake\ORM\Locator\LocatorInterface::remove() set()source public
set( string $alias , Cake\ORM\Table $object )
Устанавливает экземпляр.
Параметры
- string
$alias - Псевдоним для установки.
-
Cake\ORM\Table$object - Таблица для установки.
Возвращает
Cake\ORM\TableРеализация
Cake\ORM\Locator\LocatorInterface::set() setConfig()source public
setConfig( string|array $alias , array|null $options = null )
Хранит список параметров, используемых при создании объекта с соответствующим псевдонимом.
Параметры
- string|array
$alias - Имя псевдонима или массив для полного перезаписи текущей конфигурации.
- array|null
$optionsнеобязательно null - список параметров для псевдонима
Возвращает
$this
Исключение
RuntimeExceptionПри попытке настроить существующий экземпляр таблицы.
Магические методы, унаследованные от Cake\ORM\Locator\LocatorInterface
getConfig() |
Подробное описание свойств
$_fallbackedsource
protected Cake\ORM\Table[]
Содержит список объектов Table, созданных из встроенного класса Table. Список индексируется по псевдониму таблицы
[]
© 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.7/class-Cake.ORM.Locator.TableLocator.html