Spec-Zone.ru › CakePHP 3.8

Трейт ModelAwareTrait

Обеспечивает функциональность для загрузки классов таблиц и других репозиториев в свойства объекта-хоста.

Примеры пользователей этого трейта: Cake\Controller\Controller и Cake\Console\Shell.

Прямые пользователи

  • Cake\Console\Command
  • Cake\Console\Shell
  • Cake\Controller\Controller
  • Cake\Mailer\Mailer
  • Cake\View\Cell

Косвенные пользователи

  • Cake\Command\HelpCommand
  • Cake\Command\VersionCommand
  • Cake\Shell\SchemaCacheShell
  • Cake\Shell\ServerShell
  • Cake\Shell\Task\AssetsTask
  • Cake\Shell\Task\CommandTask
  • Cake\Shell\Task\ExtractTask
  • Cake\Shell\Task\LoadTask
  • Cake\Shell\Task\UnloadTask
  • Cake\Controller\ErrorController
  • Cake\Shell\CacheShell
  • Cake\Shell\CommandListShell
  • Cake\Shell\CompletionShell
  • Cake\Shell\I18nShell
  • Cake\Shell\OrmCacheShell
  • Cake\Shell\PluginShell
  • Cake\Shell\RoutesShell
Пространство имён: Cake\Datasource
Расположение: Datasource/ModelAwareTrait.php

Краткое описание свойств

  • $_modelFactories protected
    array
    Список переопределённых функций фабрики моделей.
  • $_modelType protected
    string
    Тип модели для использования.
  • $modelClass public
    string|false|null

    Основное имя класса модели объекта. Должен быть во множественном числе. CakePHP не будет склонять имя.

Краткое описание методов

  • _setModelClass() protected
    Устанавливает свойства modelClass и modelKey на основе соглашений.
  • getModelType() public
    Получить тип модели, который будет использоваться этим классом.
  • loadModel() public
    Загружает и создаёт объекты репозитория, необходимые для этого объекта.
  • modelFactory() public
    Переопределить существующую вызываемую функцию для генерации репозиториев заданного типа.
  • modelType() public deprecated
    Установить или получить тип модели, который будет использоваться этим классом.
  • setModelType() public
    Установить тип модели, который будет использоваться этим классом.

Подробное описание методов

_setModelClass() source protected

_setModelClass( string $name )

Устанавливает свойства modelClass и modelKey на основе соглашений.

Если свойства уже установлены, они не будут перезаписаны.

Параметры

строка $name
Имя класса.

getModelType() source public

getModelType( )

Получить тип модели, который будет использоваться этим классом.

Возвращает

строка

loadModel() source public

loadModel( string|null $modelClass = null , string|null $modelType = null )

Загружает и создаёт объекты репозитория, необходимые для этого объекта.

Обычно используется для загрузки объектов ORM Table по мере необходимости. Также может использоваться для загрузки других типов объектов репозитория, используемых вашим приложением.

Если поставщик репозитория не возвращает объект, будет брошено исключение MissingModelException.

Параметры

строка|null $modelClass необязательно null

Имя класса модели для загрузки. По умолчанию $this->modelClass. Имя может быть псевдонимом, например, 'Post', или FQCN, например, App\Model\Table\PostsTable::class.

строка|null $modelType необязательно null
Тип репозитория для загрузки. По умолчанию значение modelType().

Возвращает

%%%CODE_BLOCK_14%%>
Объект созданной модели.

Исключения

%%%CODE_BLOCK_15%%>
Если класс модели не найден.
InvalidArgumentException
При использовании типа, который не зарегистрирован.
UnexpectedValueException
Если не определён тип модели

modelFactory() source public

modelFactory( string $type , callable $factory )

Переопределить существующую вызываемую функцию для генерации репозиториев заданного типа.

Параметры

строка $type
Имя типа репозитория, для которого предназначена функция фабрики.
вызываемая функция $factory
Функция фабрики, используемая для создания экземпляров.

modelType() source public deprecated

modelType( string|null $modelType = null )

Установить или получить тип модели, который будет использоваться этим классом.

Устарело

3.5.0 Используйте getModelType()/setModelType() вместо этого.

Параметры

строка|null $modelType необязательно null
Тип модели или null для получения текущего.

Возвращает

строка|%%%CODE_BLOCK_21%%>
$this

setModelType() source public

setModelType( string $modelType )

Установить тип модели, который будет использоваться этим классом.

Параметры

строка $modelType
Тип модели.

Возвращает


$this

Подробное описание свойств

$_modelFactories source

protected массив

Список переопределённых функций фабрики моделей.

[]

$_modelType source

protected строка

Тип модели для использования.

'Table'

$modelClass source

public строка|ложь|null

Основное имя класса модели объекта. Должен быть во множественном числе. CakePHP не будет склонять имя.

Пример: для объекта с именем «Комментарии» моделью будет «Комментарии». Классы плагинов должны использовать имена в формате Plugin.Comments для правильной загрузки моделей из соответствующего плагина.

Используйте ложь, чтобы не использовать автоматическую загрузку для этого объекта. Null автоматически определяет на основе имени контроллера.

© 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.8/class-Cake.Datasource.ModelAwareTrait.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API