Класс CakeErrorController
Обработчик ошибок
Контроллер, используемый ErrorHandler для отрисовки представлений об ошибках.
- Объект
-
Контроллер реализует CakeEventListener -
AppController -
CakeErrorController
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/Controller/CakeErrorController.php
Краткое описание свойств
-
$usespublicИспользует свойствоarray
Наследуемые магические свойства
Наследуемые свойства
-
Components,View,_eventManager,_mergeParent,_responseClass,autoLayout,autoRender,cacheAction,components,ext,helpers,layout,layoutPath,methods,modelClass,modelKey,name,passedArgs,plugin,request,response,scaffold,validationErrors,view,viewClass,viewPath,viewVars
Краткое описание методов
- __construct() publicКонструктор
Подробное описание методов
__construct()source public
__construct( CakeRequest $request null , CakeResponse $response null )
Конструктор
Параметры
-
CakeRequest$requestнеобязательно null - Экземпляр запроса.
-
CakeResponse$responseнеобязательно null - Экземпляр ответа.
Переопределяет
Controller::__construct() Методы, унаследованные от Контроллера
__get()source public
__get( string $name )
Обеспечивает обратную совместимость доступа к свойствам объекта запроса. Также предоставляет псевдоним params.
Параметры
- строка
$name - Имя запрашиваемого значения
Возвращает
смешанноеЗапрашиваемое значение для допустимых переменных/псевдонимов, в противном случае null
__isset()source public
__isset( string $name )
Обеспечивает обратную совместимость, чтобы избежать проблем с пустыми и isset псевдонимами свойств. Лениво загружает модели с помощью метода loadModel(), если они объявлены в $uses
Параметры
- строка
$name - Имя свойства для проверки.
Возвращает
логическое значение__set()source public
__set( string $name , mixed $value )
Обеспечивает обратную совместимость доступа для установки значений в объект запроса.
Параметры
- строка
$name - Имя свойства для установки.
- смешанное
$value - Значение для установки.
_afterScaffoldSave()source protected
_afterScaffoldSave( string $method )
Псевдоним для afterScaffoldSave()
Устарело
3.0.0 Будет удалено в 3.0.Параметры
- строка
$method - Имя метода.
Возвращает
логическое значениеСм.
Controller::afterScaffoldSave()_afterScaffoldSaveError()source protected
_afterScaffoldSaveError( string $method )
Псевдоним для afterScaffoldSaveError()
Устарело
3.0.0 Будет удалено в 3.0.Параметры
- строка
$method - Имя метода.
Возвращает
логическое значениеСм.
Controller::afterScaffoldSaveError()_beforeScaffold()source protected
_beforeScaffold( string $method )
Псевдоним для beforeScaffold()
Устарело
3.0.0 Будет удалено в 3.0.Параметры
- строка
$method - Имя метода.
Возвращает
логическое значениеСм.
Controller::beforeScaffold()_getScaffold()source protected
_getScaffold( CakeRequest $request )
Возвращает объект scaffold для динамически сгенерированных контроллеров.
Параметры
-
CakeRequest$request - Экземпляр запроса.
Возвращает
Scaffold_getViewObject()source protected
_getViewObject( )
Создает экземпляр класса представления на основе свойства контроллера
Возвращает
View_isPrivateAction()source protected
_isPrivateAction( ReflectionMethod $method , CakeRequest $request )
Проверяет, помечен ли действие запроса как private, с подчеркиванием, или запрос пытается напрямую получить доступ к префиксным действиям.
Параметры
- ReflectionMethod
$method - Метод, который нужно вызвать.
-
CakeRequest$request - Запрос для проверки.
Возвращает
логическое значение_mergeControllerVars()source protected
_mergeControllerVars( )
Объединяет компоненты, помощники и переменные uses из Controller::$_mergeParent и PluginAppController.
_mergeUses()source protected
_mergeUses( array $merge )
Вспомогательный метод для объединения свойства $uses.
Объединяет элементы, которые еще не в $this->uses, в $this->uses.
Параметры
- массив
$merge - Данные для объединения.
_parseBeforeRedirect()source protected
_parseBeforeRedirect( mixed $response , string|array $url , integer $status , boolean $exit )
Обработка ответа beforeRedirect
Параметры
- смешанное
$response - Ответ из обратного вызова beforeRedirect
- строка|массив
$url - То же значение, что и в beforeRedirect
- целое число
$status - То же значение, что и в beforeRedirect
- логическое значение
$exit - То же значение, что и в beforeRedirect
Возвращает
массивМассив с ключами url, status и exit
_scaffoldError()source protected
_scaffoldError( string $method )
Псевдоним для scaffoldError()
Устарело
3.0.0 Будет удалено в 3.0.Параметры
- строка
$method - Имя метода.
Возвращает
логическое значениеСм.
Controller::scaffoldError()afterFilter()source public
afterFilter( )
Вызывается после выполнения и отрисовки действия контроллера.
Ссылка
http://book.cakephp.org/2.0/en/controllers.html#request-life-cycle-callbacksafterScaffoldSave()source public
afterScaffoldSave( string $method )
Этот метод должен быть переопределен в дочерних классах.
Параметры
- строка
$method - имя метода, вызываемого либо edit, либо update.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#callbacksafterScaffoldSaveError()source public
afterScaffoldSaveError( string $method )
Этот метод должен быть переопределен в дочерних классах.
Параметры
- строка
$method - имя метода, вызываемого либо edit, либо update.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#callbacksbeforeFilter()source public
beforeFilter( )
Вызывается перед действием контроллера. Вы можете использовать этот метод для настройки и настройки компонентов или выполнения логики, которая должна происходить перед каждым действием контроллера.
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#request-life-cycle-callbacksbeforeRedirect()source public
beforeRedirect( string|array $url , integer $status null , boolean $exit true )
Метод beforeRedirect вызывается, когда вызывается метод redirect контроллера, но перед любыми дальнейшими действиями.
Если этот метод возвращает false, контроллер не будет продолжать перенаправлять запрос. Переменные $url, $status и $exit имеют то же значение, что и для метода контроллера. Вы также можете вернуть строку, которая будет интерпретироваться как URL для перенаправления, или вернуть ассоциативный массив с ключом 'url' и необязательными ключами 'status' и 'exit'.
Параметры
- строка|массив
$url Строковый или массивно-ориентированный URL, указывающий на другое местоположение в приложении, или абсолютный URL
- целое число
$statusнеобязательно null - Необязательный HTTP-код состояния (например: 404)
- логическое значение
$exitнеобязательно true - Если true, вызов exit() будет сделан после перенаправления
Возвращает
смешанный типfalse, чтобы остановить перенаправление, строка, указывающая контроллеру новый URL для перенаправления, или массив с ключами url, status и exit для использования методом redirect.
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#request-life-cycle-callbacksbeforeRender()source public
beforeRender( )
Вызывается после выполнения действия контроллера, но перед рендерингом представления. Вы можете использовать этот метод для выполнения логики или установки переменных представления, которые необходимы для каждого запроса.
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#request-life-cycle-callbacksbeforeScaffold()source public
beforeScaffold( string $method )
Этот метод должен быть переопределен в дочерних классах.
Параметры
- строка
$method - имя метода, вызываемого, например, index, edit и т. д.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#callbacksconstructClasses()source public
constructClasses( )
Загружает классы модели на основе свойства uses (см. Controller::loadModel() для получения дополнительной информации). Загружает компоненты и готовит их к инициализации.
Возвращает
смешанный типtrue, если модели найдены и экземпляр создан.
Выбрасывает
MissingModelExceptionСм.
Controller::loadModel()Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::constructClassesdisableCache()source public
disableCache( )
Принудительно запрещает браузеру пользователя кэшировать результаты текущего запроса.
Устарело
3.0.0 Будет удалено в 3.0. Используйте CakeResponse::disableCache().Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::disableCacheflash()source public
flash( string $message , string|array $url , integer $pause 1 , string $layout 'flash' )
Отображает сообщение пользователю на $pause секунд, а затем перенаправляет на $url. Использует flash.ctp в качестве шаблона по умолчанию для сообщения. Не работает, если текущий уровень отладки выше 0.
Устарело
3.0.0 Будет удалено в 3.0. Используйте Flash::set() с версией 2.7+ или Session::setFlash() до 2.7.Параметры
- строка
$message - Сообщение для отображения пользователю
- строка|массив
$url - Относительный строковый или массивно-ориентированный URL для перенаправления после истечения времени
- целое число
$pauseнеобязательно 1 - Время отображения сообщения
- строка
$layoutнеобязательно 'flash' - Шаблон, который вы хотите использовать, по умолчанию 'flash'
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::flashgetEventManager()source public
getEventManager( )
Возвращает экземпляр менеджера CakeEventManager, обрабатывающий любые колбеки. Вы можете использовать этот экземпляр для регистрации новых слушателей или колбеков для событий контроллера или создавать собственные события и вызывать их по своему усмотрению.
Возвращает
CakeEventManagerheader()source public
header( string $status )
Удобный и объектно-ориентированный метод для CakeResponse::header().
Устарело
3.0.0 Будет удалено в 3.0. Используйте CakeResponse::header().Параметры
- строка
$status - Сообщение заголовка, которое устанавливается.
httpCodes()source public
httpCodes( integer|array $code null )
Запрашивает и устанавливает допустимые HTTP-коды ответа и сообщения.
Устарело
3.0.0 С 2.4. Будет удалено в 3.0. Используйте CakeResponse::httpCodes().Параметры
- целое число|массив
$codeнеобязательно null -
Если $code — целое число, то соответствующий код/сообщение возвращается, если он существует, null, если не существует. Если $code — массив, то ключи 'code' и 'message' каждого вложенного массива добавляются к стандартным HTTP-кодам. Пример:
httpCodes(404); // returns array(404 => 'Not Found') httpCodes(array( 701 => 'Unicorn Moved', 800 => 'Unexpected Minotaur' )); // sets these new values, and returns true
Возвращает
массивАссоциативный массив HTTP-кодов в качестве ключей и строк сообщений в качестве значений, или null, если заданный $code не существует.
implementedEvents()source public
implementedEvents( )
Возвращает список всех событий, которые будут срабатывать в контроллере в течение его жизненного цикла. Вы можете переопределить эту функцию, чтобы добавить свои собственные колбеки-слушатели
Возвращает
массивРеализация
CakeEventListener::implementedEvents() invokeAction()source public
invokeAction( CakeRequest $request )
Выполняет действие контроллера. Проверяет, существует ли действие и не является ли оно закрытым.
Параметры
-
CakeRequest$request - Экземпляр запроса.
Возвращает
смешанный типРезультат ответа.
Выбрасывает
PrivateActionExceptionПри действиях, которые не являются открытыми или начинаются с символа _
MissingActionExceptionПри отсутствии действий и отсутствии включённого scaffolding.
loadModel()source public
loadModel( string $modelClass null , integer|string $id null )
Загружает и инициализирует модели, необходимые для данного контроллера. Если модель не существует, будет выброшено исключение об отсутствии таблицы базы данных, так как CakePHP в настоящее время генерирует динамические модели.
Параметры
- строка
$modelClassнеобязательно null - Имя класса модели для загрузки
- целое число/строка
$idнеобязательно null - Начальный идентификатор, которым должна обладать инициализированная модель
Возвращает
booleanИстина, если модель найдена
Выбрасывает
MissingModelExceptionесли класс модели не найден.
paginate()source public
paginate( Model|string $object null , string|array $scope array() , array $whitelist array() )
Обрабатывает автоматическую постраничную навигацию записей модели.
Параметры
-
Model|строка$objectнеобязательно null - Модель для постраничной навигации (например: экземпляр модели, или 'Модель', или 'Модель.ВнутренняяМодель')
- строка|массив
$scopeнеобязательно array() - Условия, которые нужно использовать при постраничной навигации
- массив
$whitelistнеобязательно array() - Список разрешенных опций для постраничной навигации
Возвращает
массивРезультаты запроса модели
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::paginatepostConditions()source public
postConditions( array $data array() , string|array $op null , string $bool 'AND' , boolean $exclusive false )
Преобразует данные формы POST в массив условий модели, подходящий для использования в вызове Model::find().
Устарело
3.0.0 Будет удалено в версии 3.0.Параметры
- массив
$dataнеобязательно array() - Данные формы POST, организованные по модели и полю
- строка|массив
$opнеобязательно null Строка, содержащая оператор сравнения SQL, или массив, сопоставляющий операторы полям
- строка
$boolнеобязательно 'AND' - Оператор булевых значений SQL: AND, OR, XOR и т.д.
- логическое значение
$exclusiveнеобязательно false Если true, и $op – массив, поля, не включенные в $op, не будут включены в возвращаемые условия
Возвращает
массив|nullМассив условий модели
redirect()source public
redirect( string|array $url , integer|array|null $status null , boolean $exit true )
Перенаправляет на заданный $url, после отключения $this->autoRender. Выполнение скрипта приостанавливается после перенаправления.
Параметры
- строка|массив
$url Строка или массив URL, указывающий на другое место в приложении, или абсолютный URL
- целое число|массив|null
$statusнеобязательно null - Код HTTP-статуса (например: 301). По умолчанию 302, когда передается null.
- логическое значение
$exitнеобязательно true - Если true, после перенаправления будет вызван exit()
Возвращает
Cake\Network\Response|nullСрабатывает
Controller.beforeRedirect $this, array($url, $status, $exit)Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::redirectreferer()source public
referer( string $default null , boolean $local false )
Возвращает URL, по которому был выполнен текущий запрос.
Параметры
- строка
$defaultнеобязательно null - URL по умолчанию, если HTTP_REFERER не может быть прочитан из заголовков
- логическое значение
$localнеобязательно false - Если true, ограничить URL ссылающихся страниц локальным сервером
Возвращает
строкаURL, по которому был выполнен запрос
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::refererrender()source public
render( string $view null , string $layout null )
Инициализирует правильный класс представления, передает ему данные и использует его для рендеринга выходных данных представления.
Параметры
- строка
$viewнеобязательно null - Представление для рендеринга
- строка
$layoutнеобязательно null - Макет для использования
Возвращает
CakeResponseОбъект ответа, содержащий рендеренные данные представления.
Срабатывает
Controller.beforeRender $thisСсылка
http://book.cakephp.org/2.0/ru/controllers.html#Controller::renderscaffoldError()source public
scaffoldError( string $method )
Этот метод должен быть переопределен в дочерних классах. В противном случае он отобразит ошибку scaffold. Метод ДОЛЖЕН возвращать true в дочерних классах
Параметры
- строка
$method - имя вызываемого метода, например, index, edit и т. д.
Возвращаемое значение
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#callbacksset()source public
set( string|array $one , string|array $two null )
Сохраняет переменную для использования внутри шаблона представления.
Параметры
- строка/массив
$one - Строка или массив данных.
- строка/массив
$twoнеобязательно null Значение в случае, если $one является строкой (которая затем работает как ключ). Не используется, если $one является ассоциативным массивом, в противном случае служит значениями для ключей $one.
Ссылка
http://book.cakephp.org/2.0/ru/controllers.html#interacting-with-viewssetAction()source public
setAction( string $action )
Внутренне перенаправляет один действие на другое. Не выполняет другой HTTP-запрос в отличие от Controller::redirect()
Примеры:
setAction('another_action');
setAction('action_with_parameters', $parameter1); Параметры
- строка
$action Новое действие, на которое производится «перенаправление». Любые другие параметры, переданные в этот метод, будут переданы как параметры новому действию.
Возвращаемое значение
mixedВозвращает значение, возвращаемое вызываемым действием
setRequest()source public
setRequest( CakeRequest $request )
Устанавливает объекты запроса и настраивает ряд свойств контроллера на основе содержимого запроса. Свойства, которые устанавливаются:
- $this->request - В объект $request
- $this->plugin - В $request->params['plugin']
- $this->view - В $request->params['action']
- $this->autoLayout - В false, если установлен $request->params['bare'];
- $this->autoRender - В false, если $request->params['return'] == 1
- $this->passedArgs - Объединенные результаты params['named'] и params['pass]
Параметры
-
CakeRequest$request - Экземпляр запроса.
shutdownProcess()source public
shutdownProcess( )
Выполняет различные процессы завершения работы для этого контроллера. Вызывает компоненты и обратные вызовы контроллера в правильном порядке.
- вызывает обратный вызов компонента
shutdown. - вызывает метод контроллера
afterFilter.
Срабатывания
Controller.shutdown $thisstartupProcess()source public
startupProcess( )
Выполняет процесс запуска для этого контроллера. Вызывает компоненты и обратные вызовы контроллера в правильном порядке.
- Инициализирует компоненты, что вызывает их обратный вызов
initialize - Вызывает метод контроллера
beforeFilter. - вызывает методы компонентов
startup.
Срабатывания
Controller.initialize $thisController.startup $this
validate()source public
validate( )
Возвращает количество ошибок в отправленной форме.
Устаревший
3.0.0 Этот метод будет удалён в версии 3.0Возвращает
integerКоличество ошибок
validateErrors()source public
validateErrors( )
Проверяет модели, переданные в качестве параметров. Принимает список моделей в качестве аргументов. Пример:
$errors = $this->validateErrors($this->Article, $this->User);
Устаревший
3.0.0 Этот метод будет удалён в версии 3.0Возвращает
arrayОшибки проверки, или false, если ошибок нет
Методы, унаследованные от Object
_mergeVars()source protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства текущего объекта $property со свойствами в определении $class. Значение свойства текущего объекта будет объединено поверх значения свойства $class.
Это предоставляет часть DRY-магии CakePHP. Если вы хотите отключить эту функцию, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Имя свойств для объединения.
- строка
$class - Класс для объединения свойств с.
- булево
$normalizeнеобязательно true - Установите в значение true, чтобы выполнить нормализацию свойств с помощью Hash::normalize() перед объединением.
_set()source protected
_set( array $properties array() )
Позволяет задавать несколько свойств объекта в одной строке кода. Будут установлены только свойства, являющиеся частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stop()source protected
_stop( integer|string $status 0 )
Остановка выполнения текущего скрипта. Оборачивает exit(), что упрощает тестирование.
Параметры
- целое число или строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethod()source public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Предоставляет объектно-ориентированную оболочку для call_user_func_array
Параметры
- строка
$method - Имя вызываемого метода
- массив
$paramsнеобязательно array() - Список параметров для использования при вызове $method
Возвращает
mixedВозвращает результат вызова метода
log()source public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. См. CakeLog::write() для получения дополнительной информации о записи в журналы.
Параметры
- строка
$msg - Сообщение журнала
- целое число
$typeнеобязательно LOG_ERR - Константа типа ошибки. Определена в app/Config/core.php.
- null|строка|массив
$scopeнеобязательно null Область(и), в которой создаётся сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.
Возвращает
booleanУспешность записи в журнал
requestAction()source public
requestAction( string|array $url , array $extra array() )
Вызывает метод контроллера из любого места. Может использоваться для подключения контроллеров друг к другу или связывания плагинов с основным приложением. requestAction может использоваться для возвращения отображаемых представлений или получения возвращаемого значения из действий контроллера.
Под капотом этот метод использует Router::reverse() для преобразования параметра $url в строковый URL. Вы должны использовать форматы URL, совместимые с Router::reverse()
Передача данных POST и GET
Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.
Параметры
- строка или массив
$url Строковый или массивно-ориентированный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- массив
$extraнеобязательно array() если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.
Возвращает
mixedЛогическое значение true или false при успехе/неудаче или содержимое отображаемого действия, если 'return' задан в $extra.
toString()source public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по мере необходимости.
Возвращает
stringИмя этого класса
Подробное описание свойств
© 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/2.8/class-CakeErrorController.html