Класс 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 - Имя псевдонима, которое вы хотите получить.
- массив
$optionsoptional [] - Массив параметров таблицы.
Возвращает
строка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
$aliasoptional null - Имя псевдонима
- массив|null
$optionsoptional 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 сгенерирует имя класса на основе псевдонима. Например, 'Пользователи' приведет к использованиюApp\Model\Table\UsersTable. Если этот класс не существует, будет использован стандартный классCake\ORM\Table. Установив параметрclassName, вы можете определить конкретный класс для использования. Параметр className поддерживает сокращённые ссылки на классы плагинов Cake\Core\App::shortName(). -
tableОпределяет имя таблицы для использования. Если не определено, этот параметр по умолчанию будет иметь нижнее подчеркивание, соответствующее имени псевдонима. -
connectionВводит конкретный объект подключения для использования. Если этот параметр иconnectionNameне определены, методdefaultConnectionName()класса таблицы будет вызван для получения имени подключения. -
connectionNameОпределяет имя подключения для использования. Подключение с именем будет получено из Cake\Datasource\ConnectionManager.
Примечание Если ваш $alias использует синтаксис плагина, только имя будет использовано в качестве ключа в реестре. Это означает, что если два плагина или плагин и приложение предоставляют один и тот же псевдоним, реестр будет хранить только первый экземпляр.
Параметры
- строка
$alias - Имя псевдонима, которое вы хотите получить.
- массив
$optionsoptional [] Параметры, с которыми вы хотите создать таблицу. Если таблица уже загружена, параметры будут проигнорированы.
Возвращает
Cake\ORM\TableИзначает исключение
RuntimeExceptionКогда вы пытаетесь настроить псевдоним, который уже существует.
Реализация
Cake\ORM\Locator\LocatorInterface::get() getConfig()source public
getConfig( string|null $alias null )
Возвращает конфигурацию для псевдонима или полный массив конфигурации для всех псевдонимов.
Параметры
- строка|null
$aliasoptional 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При попытке настроить существующий экземпляр таблицы.
Подробное описание свойств
$_fallbackedsource
protected Cake\ORM\Table[]
Содержит список объектов Table, которые были созданы из встроенного класса Table. Список индексируется по псевдониму таблицы
[]
© 2005–2018 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.5/class-Cake.ORM.Locator.TableLocator.html