Class TableLocator
Предоставляет стандартную регистрацию/фабрику для объектов Table.
Краткое описание свойств
- $_config protected
array<string, array|null>Конфигурация для псевдонимов.
- $_fallbacked protected
arrayCake\ORM\Table>Содержит список объектов Table, созданных из встроенного класса Table. Список индексируется по псевдониму таблицы.
- $allowFallbackClass protected
boolИспользовать ли класс по умолчанию, если класс таблицы не найден.
- $fallbackClassName protected
stringКласс по умолчанию для использования
- $instances protected
array<string,Cake\ORM\Table>Экземпляры, принадлежащие реестру.
- $locations protected
array<string>Содержит список местоположений, где следует искать классы таблиц.
- $options protected
array<string, array>Содержит список опций, переданных в метод get().
Краткое описание методов
-
__construct() public
Конструктор.
-
_create() protected
Обёртка для создания экземпляров таблиц
-
_getClassName() protected
Получение имени класса таблицы.
-
addLocation() public
Добавление местоположения для поиска таблиц.
-
allowFallbackClass() public
Указать, следует ли использовать класс по умолчанию.
-
clear() public
Очистка реестра конфигурации и экземпляров.
-
createInstance() protected
Создание экземпляра заданного класса.
-
exists() public
Проверка наличия экземпляра в реестре.
-
genericInstances() public
Возвращает список таблиц, созданных этим реестром, которые не удалось создать из конкретного подкласса. Этот метод полезен для отладки распространённых ошибок при настройке ассоциаций или создании новых классов таблиц.
-
get() public
Получение экземпляра таблицы из реестра.
-
getConfig() public
Возвращает конфигурацию для псевдонима или весь массив конфигурации для всех псевдонимов.
-
remove() public
Удаление экземпляра репозитория из реестра.
-
set() public
Установка экземпляра Table.
-
setConfig() public
Сохраняет список опций, используемых при создании объекта с соответствующим псевдонимом.
-
setFallbackClassName() public
Установка имени класса по умолчанию.
Подробное описание методов
__construct() public
__construct(array<string>|null $locations = null)
Конструктор.
Параметры
-
array<string>|null$locations необязательно Расположения, где следует искать таблицы. Если не указано, используется значение по умолчанию
Model\Tableв пространстве имён вашего приложения.
_create() protected
_create(array<string, mixed> $options): Cake\ORM\Table
Обёртка для создания экземпляров таблиц
Параметры
-
array<string, mixed>$options Псевдоним для проверки.
Возвращает
Cake\ORM\Table_getClassName() protected
_getClassName(string $alias, array<string, mixed> $options = []): string|null
Получает имя класса таблицы.
Параметры
-
string$alias Имя псевдонима, которое вы хотите получить. Должно быть в формате CamelCase.
-
array<string, mixed>$options необязательно Массив параметров таблицы.
Возвращает
string|nulladdLocation() public
addLocation(string $location): $this
Добавляет расположение, где следует искать таблицы.
Параметры
-
string$location Расположение для добавления.
Возвращает
$thisallowFallbackClass() public
allowFallbackClass(bool $allow): $this
Устанавливает, следует ли использовать класс по умолчанию.
Определяет, следует ли использовать класс по умолчанию для создания экземпляра таблицы, если конкретный класс для псевдонима, используемого в get(), не был найден.
Параметры
-
bool$allow Флаг для включения или выключения режима по умолчанию
Возвращает
$thisclear() public
clear(): void
Очищает реестр конфигурации и экземпляров.
Возвращает
voidcreateInstance() protected
createInstance(string $alias, array<string, mixed> $options): Cake\Datasource\RepositoryInterface
Создаёт экземпляр указанного класса.
Параметры
-
string$alias -
array<string, mixed>$options
Возвращает
Cake\Datasource\RepositoryInterfaceexists() public
exists(string $alias): bool
Проверяет наличие экземпляра в реестре.
Параметры
-
string$alias Псевдоним для проверки.
Возвращает
boolgenericInstances() public
genericInstances(): arrayCake\ORM\Table>
Возвращает список таблиц, созданных этим реестром, которые не смогли быть инстанцированы из конкретного подкласса. Этот метод полезен для отладки распространённых ошибок при настройке ассоциаций или создании новых классов таблиц.
Возвращает
arrayCake\ORM\Table>get() public
get(string $alias, array<string, mixed> $options = []): Cake\ORM\Table
Получает экземпляр таблицы из реестра.
Таблицы создаются только один раз до очистки реестра. Это означает, что псевдонимы должны быть уникальными в приложении. Это важно, потому что ассоциации таблиц разрешаются во время выполнения, и циклические ссылки должны быть обработаны правильно.
Передаваемые параметры такие же, как в {@link \Cake\ORM\Table::__construct()}, но также распознаётся параметр className.
Параметры
-
classNameОпределяет имя конкретного класса для использования. Если не определено, CakePHP сгенерирует имя класса на основе псевдонима. Например, 'Users' приведет к использованиюApp\Model\Table\UsersTable. Если этот класс не существует, будет использован класс по умолчаниюCake\ORM\Table. Используя параметрclassName, вы можете определить конкретный класс для использования. Параметр className поддерживает короткие ссылки на классы плагинов {@link \Cake\Core\App::shortName()}. -
tableОпределяет имя таблицы для использования. Если не определено, этот параметр по умолчанию будет эквивалентен псевдониму в нижнем регистре, разделённому символом нижнего подчёркивания. -
connectionВводит конкретный объект соединения для использования. Если этот параметр иconnectionNameне определены, методdefaultConnectionName()класса таблицы будет вызван для получения имени соединения. -
connectionNameОпределяет имя соединения для использования. Названное соединение будет получено из {@link \Cake\Datasource\ConnectionManager}.
Примечание Если ваш $alias использует синтаксис плагина, только имя будет использовано в качестве ключа в реестре. Это означает, что если два плагина или плагин и приложение предоставляют один и тот же псевдоним, в реестре будет сохранён только первый экземпляр.
Параметры
-
string$alias Имя псевдонима, которое вы хотите получить. Должно быть в формате CamelCase.
-
array<string, mixed>$options необязательно Параметры, с которыми вы хотите создать таблицу. Если таблица уже загружена, параметры будут проигнорированы.
Возвращает
Cake\ORM\TableВыбрасывает
RuntimeExceptionПри попытке настроить псевдоним, который уже существует.
getConfig() public
getConfig(string|null $alias = null): array
Возвращает конфигурацию для псевдонима или весь массив конфигурации для всех псевдонимов.
Параметры
-
string|null$alias необязательно
Возвращает
arrayremove() public
remove(string $alias): void
Удаляет экземпляр хранилища из реестра.
Параметры
-
string$alias
Возвращает
voidset() public
set(string $alias, Cake\Datasource\RepositoryInterface $repository): Cake\ORM\Table
Устанавливает экземпляр таблицы.
Параметры
-
string$alias Псевдоним для установки.
-
Cake\Datasource\RepositoryInterface$repository Таблица для установки.
Возвращает
Cake\ORM\TablesetConfig() public
setConfig(array<string, mixed>|string $alias, array<string, mixed>|null $options = null): $this
Хранит список параметров, используемых при создании объекта с соответствующим псевдонимом.
Параметры
-
array<string, mixed>|string$alias -
array<string, mixed>|null$options необязательно
Возвращает
$thissetFallbackClassName() public
setFallbackClassName(string $className): $this
Устанавливает имя класса по умолчанию.
Класс, который должен быть использован для создания экземпляра таблицы, если конкретный класс для псевдонима, использованного в get(), не был найден. По умолчанию Cake\ORM\Table.
Параметры
-
string$className Имя класса по умолчанию
Возвращает
$thisПодробное описание свойства
$_config protected
Настройка псевдонимов.
Тип
array<string, array|null>$_fallbacked protected
Содержит список объектов Table, созданных из встроенного класса Table. Список индексируется по псевдониму таблицы.
Тип
arrayCake\ORM\Table>$allowFallbackClass protected
Использовать ли класс по умолчанию, если класс таблицы не найден.
Тип
bool$fallbackClassName protected
Класс по умолчанию для использования.
Тип
string$instances protected
Экземпляры, принадлежащие реестру.
Тип
array<string,Cake\ORM\Table>$locations protected
Содержит список расположений, где следует искать классы таблиц.
Тип
array<string>$options protected
Содержит список параметров, переданных методу get().
Тип
array<string, array>
© 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/4.4/class-Cake.ORM.Locator.TableLocator.html