Класс 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 )
Удаляет экземпляр из реестра.
Параметры
- строка
$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При попытке настроить существующий экземпляр таблицы.
Магические методы, унаследованные от 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.6/class-Cake.ORM.Locator.TableLocator.html