Spec-Zone.ru › CakePHP 4.3

Класс Controller

Класс контроллера приложения для организации бизнес-логики. Предоставляет базовые функции, такие как вывод представлений внутри макетов, автоматическое доступность моделей, перенаправление, обратные вызовы и многое другое.

Контроллеры должны предоставлять ряд методов «действия». Это публичные методы контроллера, которые не наследуются от Controller. Каждое действие служит конечной точкой для выполнения определенного действия над ресурсом или набором ресурсов. Например, добавление или редактирование нового объекта или вывод набора объектов.

Вы можете получить доступ к параметрам запроса, используя $this->getRequest(). Объект запроса содержит все POST, GET и FILES, которые были частью запроса.

После выполнения необходимого действия контроллеры отвечают за создание ответа. Обычно это принимает форму сгенерированного View, или, возможно, перенаправление на другой URL. В любом случае $this->getResponse() позволяет вам управлять всеми аспектами ответа.

Контроллеры создаются на основе параметров запроса и маршрутизации. По умолчанию контроллеры и действия используют стандартные имена. Например, /posts/index сопоставляется с PostsController::index(). Вы можете переназначить URL-адреса, используя Router::connect() или RouteBuilder::connect().

Обратные вызовы жизненного цикла

CakePHP запускает ряд обратных вызовов жизненного цикла во время каждого запроса. Реализовав метод, вы можете получить соответствующие события. Доступные обратные вызовы:

  • beforeFilter(EventInterface $event) Вызывается перед каждым действием. Это хорошее место для выполнения общей логики, которая применима ко всем действиям.
  • beforeRender(EventInterface $event) Вызывается перед рендерингом представления.
  • beforeRedirect(EventInterface $event, $url, Response $response) Вызывается перед выполнением перенаправления.
  • afterFilter(EventInterface $event) Вызывается после завершения каждого действия и после рендеринга представления.
Пространство имен: Cake\Controller
Ссылка: https://book.cakephp.org/4/en/controllers.html

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

  • $Auth public @property
    Cake\Controller\Component\AuthComponent
  • $Flash public @property
    Cake\Controller\Component\FlashComponent
  • $FormProtection public @property
    Cake\Controller\Component\FormProtectionComponent
  • $Paginator public @property
    Cake\Controller\Component\PaginatorComponent
  • $RequestHandler public @property
    Cake\Controller\Component\RequestHandlerComponent
  • $Security public @property
    Cake\Controller\Component\SecurityComponent
  • $_components protected
    Cake\Controller\ComponentRegistry|null

    Экземпляр ComponentRegistry, используемый для создания компонентов

  • $_eventClass protected
    string

    Имя класса по умолчанию для новых объектов событий.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

  • $_modelFactories protected
    array<callableCake\Datasource\Locator\LocatorInterface>

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

  • $_modelType protected
    string

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

  • $_tableLocator protected
    Cake\ORM\Locator\LocatorInterface|null

    Экземпляр локатора таблиц

  • $_viewBuilder protected
    Cake\View\ViewBuilder|null

    Экземпляр используемого билдера представлений.

  • $autoRender protected
    bool

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

  • $defaultTable protected
    string|null

    Псевдоним таблицы по умолчанию для этого объекта.

  • $middlewares protected
    array

    Список миддлваров.

  • $modelClass protected deprecated
    string|null

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

  • $name protected
    string

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

  • $paginate public
    array

    Настройки для пагинации.

  • $plugin protected
    string|null

    Автоматически устанавливается в имя плагина.

  • $request protected
    Cake\Http\ServerRequest

    Экземпляр объекта \Cake\Http\ServerRequest, содержащий информацию о текущем запросе. Этот объект содержит всю информацию о запросе и несколько методов для чтения дополнительной информации о запросе.

  • $response protected
    Cake\Http\Response

    Экземпляр объекта Response, содержащий информацию о предстоящем ответе

END_OF_DOCUMENT_MARKER

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

  • __construct()public

    Конструктор.

  • __get()public

    Магический аксессор для автозагрузки моделей.

  • __set()public

    Магический сеттер для удалённых свойств.

  • _setModelClass()protected

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

  • _templatePath()protected

    Получить templatePath на основе имени контроллера и префикса запроса.

  • afterFilter()public

    Вызывается после выполнения и отображения действия контроллера.

  • beforeFilter()public

    Вызывается перед действием контроллера. Вы можете использовать этот метод для настройки и настройки компонентов или выполнения логики, которая должна выполняться перед каждым действием контроллера.

  • beforeRedirect()public

    Метод beforeRedirect вызывается при вызове метода redirect контроллера, но перед любыми дальнейшими действиями.

  • beforeRender()public

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

  • components()public

    Получить реестр компонентов для этого контроллера.

  • createView()public

    Создаёт экземпляр класса представления на основе текущей конфигурации.

  • disableAutoRender()public

    Отключить автоматическое отображение действия.

  • dispatchEvent()public

    Обёртка для создания и отправки событий.

  • enableAutoRender()public

    Включить автоматическое отображение действия.

  • fetchTable()public

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

  • getAction()public

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

  • getEventManager()public

    Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

  • getMiddleware()public

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

  • getModelType()public

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

  • getName()public

    Возвращает имя контроллера.

  • getPlugin()public

    Возвращает имя плагина.

  • getRequest()public

    Получить экземпляр запроса.

  • getResponse()public

    Получить экземпляр ответа.

  • getTableLocator()public

    Получить локатор таблицы.

  • implementedEvents()public

    Возвращает список всех событий, которые будут срабатывать в контроллере во время его жизненного цикла. Вы можете переопределить эту функцию, чтобы добавить свои собственные обработчики.

  • initialize()public

    Метод инициализации.

  • invokeAction()public

    Отправляет действие контроллера.

  • isAction()public

    Метод для проверки доступности действия из URL.

  • isAutoRenderEnabled()public

    Возвращает true, если действие должно быть отображено автоматически.

  • loadComponent()public

    Добавить компонент в реестр контроллера.

  • loadModel()publicdeprecated

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

  • log()public

    Удобный метод для записи сообщения в журнал. См. Log::write() для получения дополнительной информации о записи в журналы.

  • middleware()public

    Регистрация middleware для контроллера.

  • modelFactory()public

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

  • paginate()public

    Обрабатывает постраничную навигацию записей в объектах таблицы.

  • redirect()public

    Перенаправляет на указанный $url после отключения $this->autoRender.

  • referer()public

    Возвращает URL, с которого был произведён запрос.

  • render()public

    Создаёт экземпляр соответствующего класса представления, передаёт ему данные и использует его для рендеринга выходных данных представления.

  • set()public

    Сохраняет переменную или ассоциативный массив переменных для использования внутри шаблона.

  • setAction()publicdeprecated

    Внутренне перенаправляет одно действие на другое. Не выполняет другой HTTP-запрос в отличие от Controller::redirect()

  • setEventManager()public

    Возвращает экземпляр Cake\Event\EventManagerInterface для этого объекта.

  • setModelType()public

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

  • setName()public

    Устанавливает имя контроллера.

  • setPlugin()public

    Устанавливает имя плагина.

  • setRequest()public

    Устанавливает объекты запроса и настраивает ряд свойств контроллера на основе содержимого запроса. Контроллер действует как прокси для определённых переменных представления, которые также должны быть обновлены здесь. Свойства, которые устанавливаются:

  • setResponse()public

    Устанавливает экземпляр ответа.

  • setTableLocator()public

    Устанавливает локатор таблицы.

  • shutdownProcess() public

    Выполнить различные процессы завершения работы для этого контроллера. Вызвать обратные вызовы компонентов и контроллера в правильном порядке.

  • startupProcess() public

    Выполнить процесс запуска для этого контроллера. Вызвать обратные вызовы компонентов и контроллера в правильном порядке.

  • viewBuilder() public

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

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

__construct() public

__construct(Cake\Http\ServerRequest|null $request = null, Cake\Http\Response|null $response = null, string|null $name = null, Cake\Event\EventManagerInterface|null $eventManager = null, Cake\Controller\ComponentRegistry|null $components = null)

Конструктор.

Устанавливает ряд свойств на основе соглашений, если они пусты. Чтобы переопределить соглашения, используемые CakePHP, вы можете определить свойства в объявлении своего класса.

Параметры

Cake\Http\ServerRequest|null $request optional

Объект запроса для этого контроллера. Может быть null для тестирования, но ожидайте, что функции, использующие параметры запроса, работать не будут.

Cake\Http\Response|null $response optional

Объект ответа для этого контроллера.

string|null $name optional

Переопределение имени, полезно при тестировании при использовании макетов.

Cake\Event\EventManagerInterface|null $eventManager optional

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

Cake\Controller\ComponentRegistry|null $components optional

Реестр компонентов. По умолчанию используется новый экземпляр.

__get() public

__get(string $name): Cake\Datasource\RepositoryInterface|null

Магический аксессор для автоматической загрузки модели.

Параметры

string $name

Имя свойства

Возвращает

Cake\Datasource\RepositoryInterface|null

__set() public

__set(string $name, mixed $value): void

Магический сеттер для удаленных свойств.

Параметры

string $name

Имя свойства.

mixed $value

Значение для установки.

Возвращает

void

_setModelClass() protected

_setModelClass(string $name): void

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

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

Параметры

string $name

Имя класса.

Возвращает

void

_templatePath() protected

_templatePath(): string

Получить templatePath на основе имени контроллера и префикса запроса.

Возвращает

string

afterFilter() public

afterFilter(Cake\Event\EventInterface $event): Cake\Http\Response|null|void

Вызывается после выполнения и отрисовки действия контроллера.

Параметры

Cake\Event\EventInterface $event

Экземпляр события

Возвращает

Cake\Http\Response|null|void

Ссылки

https://book.cakephp.org/4/en/controllers.html#request-life-cycle-callbacks

beforeFilter() public

beforeFilter(Cake\Event\EventInterface $event): Cake\Http\Response|null|void

Вызывается перед действием контроллера. Вы можете использовать этот метод для настройки и персонализации компонентов или выполнения логики, которая должна выполняться перед каждым действием контроллера.

Параметры

Cake\Event\EventInterface $event

Экземпляр события

Возвращает

Cake\Http\Response|null|void

Ссылки

https://book.cakephp.org/4/en/controllers.html#request-life-cycle-callbacks

beforeRedirect() public

beforeRedirect(Cake\Event\EventInterface $event, array|string $url, Cake\Http\Response $response): Cake\Http\Response|null|void

Метод beforeRedirect вызывается, когда вызывается метод перенаправления контроллера, но до любого дальнейшего действия.

Если событие остановлено, контроллер не будет продолжать перенаправлять запрос. Переменные $url и $status имеют то же значение, что и для метода контроллера. Вы можете установить результат события в экземпляр ответа или изменить местоположение перенаправления, используя экземпляр ответа контроллера.

Параметры

Cake\Event\EventInterface $event

Экземпляр события

array|string $url

Строка или URL-адрес на основе массива, указывающий на другое местоположение в приложении, или абсолютный URL-адрес

Cake\Http\Response $response

Объект ответа.

Возвращает

Cake\Http\Response|null|void

Ссылки

https://book.cakephp.org/4/en/controllers.html#request-life-cycle-callbacks

beforeRender() public

beforeRender(Cake\Event\EventInterface $event): Cake\Http\Response|null|void

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

Параметры

Cake\Event\EventInterface $event

Экземпляр события

Возвращает

Cake\Http\Response|null|void

Ссылки

https://book.cakephp.org/4/en/controllers.html#request-life-cycle-callbacks

components() public

components(Cake\Controller\ComponentRegistry|null $components = null): Cake\Controller\ComponentRegistry

Получить реестр компонентов для этого контроллера.

Если вызывается с первым параметром, он будет установлен как свойство контроллера $this->_components

Параметры

Cake\Controller\ComponentRegistry|null $components optional

Реестр компонентов.

Возвращает

Cake\Controller\ComponentRegistry

createView() public

createView(string|null $viewClass = null): Cake\View\View

Конструирует экземпляр класса представления на основе текущей конфигурации.

Параметры

string|null $viewClass optional

Необязательное имя класса пространства имен класса представления для создания экземпляра.

Возвращает

Cake\View\View

Вызывает исключение

Cake\View\Exception\MissingViewException
Если класс представления не найден.

disableAutoRender() public

disableAutoRender(): $this

Отключить автоматическое отображение действий.

Возвращает

$this

dispatchEvent() public

dispatchEvent(string $name, array|null $data = null, object|null $subject = null): Cake\Event\EventInterface

Обёртка для создания и отправки событий.

Возвращает отправленное событие.

Параметры

string $name

Имя события.

array|null $data optional

Любое значение, которое вы хотите передать с этим событием, чтобы его могли прочитать слушатели.

object|null $subject optional

Объект, к которому относится это событие ($this по умолчанию).

Возвращает

Cake\Event\EventInterface

enableAutoRender() public

enableAutoRender(): $this

Включить автоматическое отображение действий.

Возвращает

$this

fetchTable() public

fetchTable(string|null $alias = null, array<string, mixed> $options = []): Cake\ORM\Table

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

Параметры

string|null $alias optional

Имя псевдонима, которое вы хотите получить. Должно быть в формате CamelCase. Если null используется значение свойства $defaultTable.

array<string, mixed> $options optional

Параметры, с которыми вы хотите создать таблицу. Если таблица уже загружена, параметры реестра будут игнорироваться.

Возвращает

Cake\ORM\Table

Вызывает исключение

Cake\Core\Exception\CakeException
Если аргумент `$alias` и свойство `$defaultTable` оба равны `null`.

См. также

\Cake\ORM\TableLocator::get()

getAction() public

getAction(): Closure

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

Возвращает

Closure

Вызывает исключение

Cake\Controller\Exception\MissingActionException

getEventManager() public

getEventManager(): Cake\Event\EventManagerInterface

Возвращает экземпляр менеджера Cake\Event\EventManager для этого объекта.

Вы можете использовать этот экземпляр для регистрации любых новых слушателей или обратных вызовов к событиям объекта или для создания собственных событий и их запуска по желанию.

Возвращает

Cake\Event\EventManagerInterface

getMiddleware() public

getMiddleware(): array

Получить промежуточное ПО, которое будет применено к этому контроллеру.

Возвращает

array

getModelType() public

getModelType(): string

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

Returns

string

getName() public

getName(): string

Возвращает имя контроллера.

Returns

string

getPlugin() public

getPlugin(): string|null

Возвращает имя плагина.

Returns

string|null

getRequest() public

getRequest(): Cake\Http\ServerRequest

Получает экземпляр запроса.

Returns

Cake\Http\ServerRequest

getResponse() public

getResponse(): Cake\Http\Response

Получает экземпляр ответа.

Returns

Cake\Http\Response

getTableLocator() public

getTableLocator(): Cake\ORM\Locator\LocatorInterface

Получает локатор таблицы.

Returns

Cake\ORM\Locator\LocatorInterface

implementedEvents() public

implementedEvents(): array<string, mixed>

Возвращает список всех событий, которые будут срабатывать в контроллере в течение его жизненного цикла. Вы можете переопределить эту функцию, чтобы добавить свои собственные обратные вызовы обработчика событий

Example:

public function implementedEvents()
 {
     return [
         'Order.complete' => 'sendEmail',
         'Article.afterBuy' => 'decrementInventory',
         'User.onRegister' => ['callable' => 'logRegistration', 'priority' => 20, 'passParams' => true]
     ];
 }

Returns

array<string, mixed>

initialize() public

initialize(): void

Метод инициализации.

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

Returns

void

invokeAction() public

invokeAction(Closure $action, array $args): void

Отправляет действие контроллера.

Parameters

Closure $action

Замыкание действия.

array $args

Аргументы, которые будут переданы при вызове действия.

Returns

void

Throws

UnexpectedValueException
Если возвращаемое значение действия не равно `null` или экземпляру `ResponseInterface`.

isAction() public

isAction(string $action): bool

Метод для проверки доступности действия из URL.

Переопределите этот метод, чтобы изменить, к каким методам контроллера можно получить доступ. Реализация по умолчанию запрещает доступ ко всем методам, определенным в Cake\Controller\Controller, и разрешает все открытые методы во всех подклассах этого класса.

Parameters

string $action

Действие для проверки.

Returns

bool

Throws

ReflectionException

isAutoRenderEnabled() public

isAutoRenderEnabled(): bool

Возвращает true, если действие должно быть автоматически обработано.

Returns

bool

loadComponent() public

loadComponent(string $name, array<string, mixed> $config = []): Cake\Controller\Component

Добавить компонент в реестр контроллера.

Этот метод также установит компонент в свойство. Например:

$this->loadComponent('Authentication.Authentication');

Приведёт к установке свойства Authentication.

Parameters

string $name

Имя компонента для загрузки.

array<string, mixed> $config optional

Конфигурация компонента.

Returns

Cake\Controller\Component

Throws

Exception

loadModel() public

loadModel(string|null $modelClass = null, string|null $modelType = null): Cake\Datasource\RepositoryInterface

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

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

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

Parameters

string|null $modelClass optional

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

string|null $modelType optional

Тип репозитория для загрузки. По умолчанию значение getModelType().

Returns

Cake\Datasource\RepositoryInterface

Throws

Cake\Datasource\Exception\MissingModelException
Если класс модели не найден.
UnexpectedValueException
Если аргумент $modelClass не предоставлен, а значение свойства ModelAwareTrait::$modelClass пустое.

log() public

log(string $message, string|int $level = LogLevel::ERROR, array|string $context = []): bool

Удобный метод для записи сообщения в Log. См. Log::write() для получения дополнительной информации о записи в журналы.

Parameters

string $message

Сообщение журнала.

string|int $level optional

Уровень ошибки.

array|string $context optional

Дополнительные данные журнала, относящиеся к этому сообщению.

Returns

bool

middleware() public

middleware(Psr\Http\Server\MiddlewareInterfaceClosure|string $middleware, array<string, mixed> $options = []): void

Регистрирует промежуточное ПО для контроллера.

Parameters

Psr\Http\Server\MiddlewareInterfaceClosure|string $middleware

Промежуточное ПО.

array<string, mixed> $options optional

Допустимые параметры:

  • only: (массив|строка) Запускать промежуточное ПО только для указанных действий.
  • except: (массив|строка) Запускать промежуточное ПО для всех действий, кроме указанных.

Returns

void

modelFactory() public

modelFactory(string $type, Cake\Datasource\Locator\LocatorInterface|callable $factory): void

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

Parameters

string $type

Имя типа репозитория, для которого предназначена функция фабрики.

Cake\Datasource\Locator\LocatorInterface|callable $factory

Функция фабрики, используемая для создания экземпляров.

Returns

void

paginate() public

paginate(Cake\ORM\TableCake\ORM\Query|string|null $object = null, array<string, mixed> $settings = []): Cake\ORM\ResultSetCake\Datasource\ResultSetInterface

Обрабатывает постраничную разбивку записей в объектах Table.

Загрузит сохранённый объект Table и с помощью PaginatorComponent выполнит постраничную разбивку запроса, используя данные запроса и настройки, определённые в $this->paginate.

Этот метод также сделает PaginatorHelper доступным в представлении.

Parameters

Cake\ORM\TableCake\ORM\Query|string|null $object optional

Таблица для постраничной разбивки (например: экземпляр Table, 'TableName' или объект Query)

array<string, mixed> $settings optional

Настройки/конфигурация, используемые для постраничной разбивки.

Returns

Cake\ORM\ResultSetCake\Datasource\ResultSetInterface

Throws

RuntimeException
Когда не может быть найден совместимый объект таблицы.

Links

https://book.cakephp.org/4/en/controllers.html#paginating-a-model

redirect() public

redirect(Psr\Http\Message\UriInterface|array|string $url, int $status = 302): Cake\Http\Response|null

Перенаправляет на заданный $url после отключения $this->autoRender.

Parameters

Psr\Http\Message\UriInterface|array|string $url

Строка, URL на основе массива или экземпляр UriInterface.

int $status optional

HTTP-код состояния. По умолчанию 302.

Returns

Cake\Http\Response|null

Links

https://book.cakephp.org/4/en/controllers.html#Controller::redirect

referer() public

referer(array|string|null $default = '/', bool $local = true): string

Возвращает URL-адрес реферера для этого запроса.

Parameters

array|string|null $default optional

URL по умолчанию, который будет использоваться, если HTTP_REFERER не может быть прочитан из заголовков

bool $local optional

Если false, не ограничивайте URL-адреса рефереров локальным сервером. Будьте осторожны с использованием внешних источников.

Returns

string

render() public

render(string|null $template = null, string|null $layout = null): Cake\Http\Response

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

Parameters

string|null $template optional

Шаблон для использования при отрисовке

string|null $layout optional

Макет для использования

Returns

Cake\Http\Response

Links

https://book.cakephp.org/4/en/controllers.html#rendering-a-view

set() public

set(array|string $name, mixed $value = null): $this

Сохраняет переменную или ассоциативный массив переменных для использования внутри шаблона.

Parameters

array|string $name

Строка или массив данных.

mixed $value optional

Значение, если $name является строкой (которая затем работает как ключ). Не используется, если $name является ассоциативным массивом, в противном случае служит значениями для ключей $name.

Returns

$this

setAction() public

setAction(string $action, mixed ...$args): mixed

Внутренне перенаправляет одно действие на другое. Не выполняет другой HTTP-запрос в отличие от Controller::redirect()

Примеры:

setAction('another_action');
setAction('action_with_parameters', $parameter1);

Parameters

string $action

Новое действие, на которое будет выполнено «перенаправление». Любые другие параметры, переданные этому методу, будут переданы как параметры новому действию.

mixed ...$args

Аргументы, переданные действию

Returns

mixed

setEventManager() public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

Возвращает экземпляр Cake\Event\EventManagerInterface для этого объекта.

Вы можете использовать этот экземпляр для регистрации любых новых прослушивателей или обратных вызовов для событий объекта или создания собственных событий и их запуска по желанию.

Parameters

Cake\Event\EventManagerInterface $eventManager

eventManager для установки

Returns

$this

setModelType() public

setModelType(string $modelType): $this

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

Parameters

string $modelType

Тип модели

Returns

$this

setName() public

setName(string $name): $this

Устанавливает имя контроллера.

Parameters

string $name

Имя контроллера.

Returns

$this

setPlugin() public

setPlugin(string|null $name): $this

Устанавливает имя плагина.

Parameters

string|null $name

Имя плагина.

Returns

$this

setRequest() public

setRequest(Cake\Http\ServerRequest $request): $this

Устанавливает объекты запроса и настраивает ряд свойств контроллера на основе содержимого запроса. Контроллер выступает в качестве прокси для некоторых переменных представления, которые также должны быть обновлены здесь. Устанавливаемые свойства:

  • $this->request - параметр $request

Parameters

Cake\Http\ServerRequest $request

Экземпляр запроса.

Returns

$this

setResponse() public

setResponse(Cake\Http\Response $response): $this

Устанавливает экземпляр ответа.

Parameters

Cake\Http\Response $response

Экземпляр ответа.

Returns

$this

setTableLocator() public

setTableLocator(Cake\ORM\Locator\LocatorInterface $tableLocator): $this

Устанавливает локатор таблиц.

Parameters

Cake\ORM\Locator\LocatorInterface $tableLocator

Экземпляр LocatorInterface.

Returns

$this

shutdownProcess() public

shutdownProcess(): Psr\Http\Message\ResponseInterface|null

Выполняет различные процессы завершения работы для этого контроллера. Запускает обратные вызовы компонентов и контроллера в правильном порядке.

  • запускает обратный вызов компонента shutdown.
  • вызывает метод контроллера afterFilter.

Returns

Psr\Http\Message\ResponseInterface|null

startupProcess() public

startupProcess(): Psr\Http\Message\ResponseInterface|null

Выполняет процесс запуска для этого контроллера. Запускает обратные вызовы компонентов и контроллера в правильном порядке.

  • Инициализирует компоненты, которые запускают их обратный вызов initialize
  • Вызывает контроллер beforeFilter.
  • запускает методы компонента startup.

Returns

Psr\Http\Message\ResponseInterface|null

viewBuilder() public

viewBuilder(): Cake\View\ViewBuilder

Получает используемый компоновщик представлений.

Returns

Cake\View\ViewBuilder

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

$Auth public @property

Тип

Cake\Controller\Component\AuthComponent

$Flash public @property

Тип

Cake\Controller\Component\FlashComponent

$FormProtection public @property

Тип

Cake\Controller\Component\FormProtectionComponent

$Paginator public @property

Тип

Cake\Controller\Component\PaginatorComponent

$RequestHandler public @property

Тип

Cake\Controller\Component\RequestHandlerComponent

$Security public @property

Тип

Cake\Controller\Component\SecurityComponent

$_components protected

Экземпляр ComponentRegistry, используемый для создания компонентов

Тип

Cake\Controller\ComponentRegistry|null

$_eventClass protected

Имя по умолчанию класса для новых объектов событий.

Тип

string

$_eventManager protected

Экземпляр Cake\Event\EventManager, используемый этим объектом для отправки внутренних событий.

Тип

Cake\Event\EventManagerInterface|null

$_modelFactories protected

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

Тип

array<callableCake\Datasource\Locator\LocatorInterface>

$_modelType protected

Тип модели, который нужно использовать.

Тип

string

$_tableLocator protected

Экземпляр локатора таблиц

Тип

Cake\ORM\Locator\LocatorInterface|null

$_viewBuilder protected

Экземпляр используемого билдера представлений.

Тип

Cake\View\ViewBuilder|null

$autoRender protected

Устанавливается в значение true для автоматического рендеринга представления после логики действия.

Тип

bool

$defaultTable protected

Псевдоним таблицы по умолчанию для данного объекта.

Тип

string|null

$middlewares protected

Список middleware.

Тип

array

$modelClass protected deprecated

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

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

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

Тип

string|null

$name protected

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

Автоматически устанавливается с помощью соглашений в Controller::__construct().

Тип

string

$paginate public

Настройки для пагинации.

Используется для предварительной настройки параметров пагинации для различных таблиц, которые ваш контроллер будет отображать с использованием пагинации.

Тип

array

$plugin protected

Автоматически устанавливается в имя плагина.

Тип

string|null

$request protected

Экземпляр объекта \Cake\Http\ServerRequest, содержащий информацию о текущем запросе. Этот объект содержит всю информацию о запросе и несколько методов для получения дополнительной информации о запросе.

Тип

Cake\Http\ServerRequest

$response protected

Экземпляр объекта Response, содержащий информацию о предстоящем ответе

Тип

Cake\Http\Response

© 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.3/class-Cake.Controller.Controller.html

Spec-Zone.ru

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