Класс TableLocator
Предоставляет стандартную регистрация/фабрику для объектов Table.
- Cake\ORM\Locator\TableLocator реализует Cake\ORM\Locator\LocatorInterface
Краткое описание свойств
-
$_configprotectedКонфигурация для псевдонимов.array -
$_fallbackedprotectedarrayСодержит список объектов Table, которые были созданы на основе встроенного класса Table. Список индексируется по псевдониму таблицы
-
$_instancesprotectedЭкземпляры, принадлежащие к регистру.array -
$_optionsprotectedСодержит список опций, которые были переданы методу get().array
Краткое описание методов
- _create() protectedОбёртка для создания экземпляров таблиц
- _getClassName() protectedПолучение имени класса таблицы.
- clear() publicОчищает регистр конфигурации и экземпляров.
- config() public
Сохраняет список опций, используемых при создании объекта с соответствующим псевдонимом.
- exists() publicПроверка наличия экземпляра в регистре.
- genericInstances() public
Возвращает список таблиц, созданных этим регистром, которые не могут быть созданы из определенного подкласса. Этот метод полезен для отладки распространенных ошибок при настройке ассоциаций или создании новых классов таблиц.
- get() publicПолучение экземпляра таблицы из регистра.
- remove() publicУдаление экземпляра из регистра.
- set() 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|null $alias null , array|null $options null )
Сохраняет список опций, используемых при создании объекта с соответствующим псевдонимом.
Опции, которые могут быть сохранены, — это те, которые распознаются get() Если второй аргумент опущен, он вернет текущие настройки для $alias.
Если аргументы не переданы, он вернет весь массив конфигурации для всех псевдонимов
Параметры
- строка|null
$aliasнеобязательно null - Имя псевдонима
- массив|null
$optionsнеобязательно null - Список опций для псевдонима
Возвращает
массивДанные конфигурации.
Исключения
RuntimeExceptionПри попытке настроить существующий экземпляр таблицы.
Реализация
Cake\ORM\Locator\LocatorInterface::config() exists()source public
exists( string $alias )
Проверка наличия экземпляра в регистре.
Параметры
- строка
$alias - Псевдоним для проверки.
Возвращает
booleanРеализация
Cake\ORM\Locator\LocatorInterface::exists() genericInstances()source public
genericInstances( )
Возвращает список таблиц, созданных этим регистром, которые не могут быть созданы из определенного подкласса. Этот метод полезен для отладки распространенных ошибок при настройке ассоциаций или создании новых классов таблиц.
Возвращает
массив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() 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() Подробное описание свойств
END_OF_DOCUMENT_MARKER$_fallbackedsource
protected массив
Содержит список объектов Table, которые были созданы из встроенного класса Table. Список индексируется по псевдониму таблицы
[]
© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.ORM.Locator.TableLocator.html