Класс ControllerTask
Класс задач для создания и обновления файлов контроллеров.
- Объект
-
Оболочка -
AppShell -
BakeTask -
ControllerTask
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение Cake/Console/Command/Task/ControllerTask.php
Подробное описание методов
_askAboutMethodsисходный код защищённый
_askAboutMethods( )
Взаимодействие с пользователем и запрос о том, какие методы (администраторские или обычные) он хочет создать.
Возвращает
arrayМассив, содержащий ответы (bakeRegular, bakeAdmin)
_doPropertyChoicesисходный код защищённый
_doPropertyChoices( string $prompt , string $example )
Общий код для обработки выбора свойств.
Параметры
- строка
$prompt - Вопрос «да/нет» перед списком
- строка
$example - Вопрос для списка, разделенного запятыми, с примерами.
Возвращает
arrayМассив значений для свойства.
allисходный код публичный
all( )
Создаёт все контроллеры сразу. Создаст контроллеры только для моделей, которые существуют.
bakeисходный код публичный
bake( string $controllerName , string $actions '' , array $helpers null , array $components null )
Собирает и записывает файл контроллера
Параметры
- строка
$controllerName - Имя контроллера, уже множественное и правильно оформленное.
- строка
$actionsнеобязательный '' - Действия для добавления или установка всего контроллера для использования $scaffold (установите $actions в 'scaffold')
- массив
$helpersнеобязательный null - Помощники для использования в контроллере
- массив
$componentsнеобязательный null - Компоненты для использования в контроллере
Возвращает
stringСозданный контроллер
bakeActionsисходный код публичный
bakeActions( string $controllerName , string $admin null , boolean $wannaUseSession true )
Создаёт действия scaffold
Параметры
- строка
$controllerName - Имя контроллера
- строка
$adminнеобязательный null - Маршрут администратора для использования
- логическое
$wannaUseSessionнеобязательный true - Установите в значение true для использования сессий, в противном случае - false
Возвращает
stringСозданные действия
bakeTestисходный код публичный
bakeTest( string $className )
Собирает и записывает файл модульного теста
Параметры
- строка
$className - Имя класса контроллера
Возвращает
stringСозданный тест
confirmControllerисходный код публичный
confirmController( string $controllerName , string $useDynamicScaffold , array $helpers , array $components )
Подтверждает контроллер, который нужно создать, с пользователем
Параметры
- строка
$controllerName - Название контроллера.
- строка
$useDynamicScaffold - Использовать ли динамические scaffold.
- массив
$helpers - Список помощников для включения.
- массив
$components - Список компонентов для включения.
doComponentsисходный код публичный
doComponents( )
Взаимодействие с пользователем и получение списка дополнительных компонентов
Возвращает
arrayКомпоненты, которые пользователь хочет использовать.
doHelpersисходный код публичный
doHelpers( )
Взаимодействие с пользователем и получение списка дополнительных помощников
Возвращает
arrayПомощники, которые пользователь хочет использовать.
executeисходный код публичный
execute( )
Метод выполнения, всегда используется для задач
Переопределяет
BakeTask::execute() getNameисходный код публичный
getName( string $useDbConfig null )
Заставляет пользователя указать контроллер, который он хочет создать, и возвращает выбранное имя контроллера.
Параметры
- строка
$useDbConfigнеобязательный null - Имя подключения для получения имени контроллера.
Возвращает
stringИмя контроллера
getOptionParserисходный код публичный
getOptionParser( )
Получает экземпляр обработчика опций и настраивает его.
Возвращает
ConsoleOptionParserConsoleOptionParser
Переопределяет
Shell::getOptionParser() initializeисходный код публичный
initialize( )
Переопределяет инициализацию
Переопределяет
Shell::initialize() listAllисходный код публичный
listAll( string $useDbConfig null )
Выводит и получает список возможных контроллеров из базы данных
Параметры
- строка
$useDbConfigнеобязательный null - Имя конфигурации базы данных
Возвращает
arrayНабор контроллеров
Методы, унаследованные от BakeTask
getPathисходный код публичный
getPath( )
Получает путь для вывода. Проверяет свойство плагина и возвращает правильный путь.
Возвращает
stringПуть вывода.
startupисходный код публичный
startup( )
Отключить кэширование и включить отладку для создания. Это принудительно использует самую последнюю схему базы данных.
Переопределяет
Shell::startup() Методы, унаследованные от Оболочки
__constructsource public
__construct( ConsoleOutput $stdout null , ConsoleOutput $stderr null , ConsoleInput $stdin null )
Создаёт экземпляр этого объекта Shell.
Параметры
-
ConsoleOutput$stdoutнеобязательно null - Объект ConsoleOutput для stdout.
-
ConsoleOutput$stderrнеобязательно null - Объект ConsoleOutput для stderr.
-
ConsoleInput$stdinнеобязательно null - Объект ConsoleInput для stdin.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#ShellПереопределяет
Object::__construct() __getsource public
__get( string $name )
Перегрузка get для ленивой сборки задач
Параметры
- string
$name - Имя свойства для доступа.
Возвращает
ShellОбъект Task
__issetsource public
__isset( string $name )
Ленично загружает модели с помощью метода loadModel(), если они объявлены в $uses
Параметры
- string
$name - Имя модели для поиска.
_checkUnitTestsource protected
_checkUnitTest( )
Действие по созданию модульного теста
Возвращает
booleanУспех
_controllerNamesource protected
_controllerName( string $name )
Создаёт правильное множественное имя контроллера для заданного имени класса контроллера
Параметры
- string
$name - Имя класса контроллера
Возвращает
stringМножественное имя контроллера
_controllerPathsource protected
_controllerPath( string $name )
Создаёт правильный путь к контроллеру для указанного имени класса контроллера
Параметры
- string
$name - Имя класса контроллера
Возвращает
stringПуть к контроллеру
_displayHelpsource protected
_displayHelp( string $command )
Отображает справку в правильном формате
Параметры
- string
$command - Команда для получения справки.
_getInputsource protected
_getInput( string $prompt , string|array $options , string $default )
Запрашивает у пользователя входные данные и возвращает их.
Параметры
- string
$prompt - Текст запроса.
- string|array
$options - Массив или строка опций.
- string
$default - Значение по умолчанию для входных данных.
Возвращает
Eitherзначение по умолчанию или введённые пользователем данные.
_loadModelssource protected
_loadModels( )
Если $uses является массивом, загружает каждую модель из массива
Возвращает
booleanbool
_modelKeysource protected
_modelKey( string $name )
Создаёт правильное нижнее подчеркивание модели для ассоциаций
Параметры
- string
$name - Имя класса модели
Возвращает
stringЕдиничное имя модели
_modelNamesource protected
_modelName( string $name )
Создаёт правильное имя модели в стиле camelCase (единственное число) для указанного имени
Параметры
- string
$name - Имя
Возвращает
stringИмя модели в стиле camelCase (единственное число)
_modelNameFromKeysource protected
_modelNameFromKey( string $key )
Создаёт правильное имя модели из внешнего ключа
Параметры
- string
$key - Внешний ключ
Возвращает
stringИмя модели
_pluginPathsource protected
_pluginPath( string $pluginName )
Находит правильный путь к плагину. Сканирует $pluginPaths для нужного плагина.
Параметры
- string
$pluginName - Имя плагина (например, DebugKit)
Возвращает
stringПуть к плагину.
_pluralHumanNamesource protected
_pluralHumanName( string $name )
Создаёт множественное человекопонятное имя, используемое в представлениях
Параметры
- string
$name - Имя контроллера
Возвращает
stringМножественное человекопонятное имя
_pluralNamesource protected
_pluralName( string $name )
Создаёт множественное имя для представлений
Параметры
- string
$name - Используемое имя
Возвращает
stringМножественное имя для представлений
_singularHumanNamesource protected
_singularHumanName( string $name )
Создаёт единственное человекопонятное имя, используемое в представлениях
Параметры
- string
$name - Имя контроллера
Возвращает
stringЕдинственное человекопонятное имя
_singularNamesource protected
_singularName( string $name )
Создаёт единственное имя для использования в представлениях.
Параметры
- string
$name - Множественное значение с нижним подчеркиванием.
Возвращает
stringимя
_useLoggersource protected
_useLogger( boolean $enable true )
Используется для включения или отключения вывода журнальных данных в stdout и stderr. Если вы не хотите видеть все, что регистрируется через CakeLog, в stdout или stderr, вызовите эту функцию с первым параметром false
Параметры
- boolean
$enableнеобязательно true - Включить вывод CakeLog или нет
clearsource public
clear( )
Очистить консоль
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::clearcreateFilesource public
createFile( string $path , string $contents )
Создаёт файл по заданному пути
Параметры
- string
$path - Куда поместить файл.
- string
$contents - Содержимое файла.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::createFiledispatchShellsource public
dispatchShell( )
Отправляет команду другому Shell. Аналогично Object::requestAction(), но предназначено для запуска оболочек из других оболочек.
Использование:
С текстовой командой:
return $this->dispatchShell('schema create DbAcl');
Избегайте использования этого формата, если у вас есть строковые аргументы с пробелами. Отправленная команда будет вызвана неправильно. Используйте этот формат только для простого отправления команд.
С массивом команд:
return $this->dispatchShell('schema', 'create', 'i18n', '--dry');
Возвращает
mixedРезультат работы другой оболочки.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::dispatchShellerrsource public
err( string|array $message null , integer $newlines 1 )
Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не переданы, выводит только символ новой строки.
Параметры
- строка|массив
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::errerrorsource public
error( string $title , string $message null )
Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1
Параметры
- строка
$title - Заголовок ошибки
- строка
$messageнеобязательно null - Необязательное сообщение об ошибке
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::errorhasMethodsource public
hasMethod( string $name )
Проверяет, есть ли у данной оболочки вызываемый метод с заданным именем.
Параметры
- строка
$name - Имя метода для проверки.
Возвращает
booleanbool
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasMethodhasTasksource public
hasTask( string $task )
Проверяет, есть ли у этой оболочки задача с заданным именем.
Параметры
- строка
$task - Имя задачи для проверки.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasTaskhrsource public
hr( integer $newlines 0 , integer $width 63 )
Выводит последовательность символов «-» в стандартный вывод, используется как визуальный разделитель.
Параметры
- целое число
$newlinesнеобязательно 0 - Количество символов новой строки для добавления перед и после
- целое число
$widthнеобязательно 63 - Ширина строки, по умолчанию 63
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hrinsource public
in( string $prompt , string|array $options null , string $default null )
Запрашивает ввод у пользователя и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка|массив
$optionsнеобязательно null - Массив или строка опций.
- строка
$defaultнеобязательно null - Значение ввода по умолчанию.
Возвращает
mixedЗначение по умолчанию или введенное пользователем.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::inloadModelsource public
loadModel( string $modelClass null , mixed $id null )
Загружает и инициализирует модели, необходимые для этой оболочки.
Параметры
- строка
$modelClassнеобязательно null - Имя класса модели для загрузки
- смешанный
$idнеобязательно null - Начальный идентификатор, который должна иметь созданная модель
Возвращает
mixedtrue, если модель найдена и экземпляр создан, возвращает ошибку, если модель не найдена.
Издает
MissingModelExceptionесли класс модели не может быть найден.
loadTaskssource public
loadTasks( )
Загружает задачи, определенные в public $tasks
Возвращает
booleanbool
nlsource public
nl( integer $multiplier 1 )
Возвращает последовательность одной или нескольких символов новой строки.
Параметры
- целое число
$multiplierнеобязательно 1 - Количество повторений последовательности новой строки
Возвращает
stringстрока
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::nloutsource public
out( string|array $message null , integer $newlines 1 , integer $level Shell::NORMAL )
Выводит одно или несколько сообщений в stdout. Если параметры не переданы, выводит только символ новой строки.
Уровни вывода
Есть 3 встроенных уровня вывода: Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют параметрам вывода verbose и quiet в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.
Параметры
- строка|массив
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- целое число
$levelнеобязательноShell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanВозвращает количество байтов, возвращенных при записи в stdout.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::outoverwritesource public
overwrite( array|string $message , integer $newlines 1 , integer $size null )
Перезаписывает уже выведенный текст.
Полезно для создания полосок прогресса или когда вам нужно заменить уже выведенный на экран текст новым текстом.
Предупреждение Нельзя перезаписать текст, содержащий символы новой строки.
Параметры
- массив|строка
$message - Сообщение для вывода.
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления.
- целое число
$sizeнеобязательно null - Количество байтов для перезаписи. По умолчанию равно длине последнего выведенного сообщения.
Возвращает
integer|booleanВозвращает количество байтов, возвращенных при записи в stdout.
paramsource public
param( string $name )
Безопасно получает значения из $this->params.
Параметры
- строка
$name - Имя параметра для получения.
Возвращает
string|boolean|nullЗначение. Возвращает null, если параметр не существует.
runCommandsource public
runCommand( string $command , array $argv )
Запускает оболочку с предоставленным argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в оболочке.
- Соответствующее имя задачи.
-
main()метод.
Если оболочка реализует main() метод, все отсутствующие вызовы методов будут отправлены в main() с оригинальным именем метода в argv.
Параметры
- string
$command - Имя команды для запуска в этой оболочке. Если этот аргумент пуст, и в оболочке есть
main()метод, он будет вызван вместо этого. - array
$argv - Массив аргументов для запуска оболочки. В этом массиве должно отсутствовать имя оболочки.
Ссылка
http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::runCommandshortPathsource public
shortPath( string $file )
Делает абсолютный путь к файлу более читаемым
Параметры
- string
$file - Абсолютный путь к файлу
Возвращает
stringкороткий путь
Ссылка
http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::shortPathwrapTextsource public
wrapText( string $text , string|integer|array $options array() )
Обернуть блок текста. Позволяет задать ширину и отступ блока текста.
Опции
-
widthШирина обрезки. По умолчанию 72 -
wordWrapОбрезать только по границам слов (пробелы). По умолчанию true. -
indentОтступать текст с указанной строкой. По умолчанию null.
Параметры
- string
$text - Текст для форматирования.
- string|integer|array
$optionsoptional array() - Массив опций для использования, или целое число для обрезки текста.
Возвращает
stringОбрезанный/отступающий текст
См.
CakeText::wrap()Ссылка
http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::wrapTextНаследуемые методы из Object
_mergeVarssource protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства $property данного объекта со свойствами в определении $class. Значение этого класса для свойства будет объединено поверх значения $class.
Это предоставляет часть магии DRY, которую предоставляет CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- array
$properties - Имя свойств для объединения.
- string
$class - Класс для объединения свойства с ним.
- boolean
$normalizeoptional true - Установите в значение true, чтобы запустить свойства через Hash::normalize() перед объединением.
_setsource protected
_set( array $properties array() )
Позволяет задать несколько свойств объекта в одной строке кода. Будут установлены только свойства, которые являются частью объявления класса.
Параметры
- array
$propertiesoptional array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stopsource protected
_stop( integer|string $status 0 )
Остановить выполнение текущего скрипта. Оборачивает exit(), что упрощает тестирование.
Параметры
- integer|string
$statusoptional 0 - см. http://php.net/exit для значений
dispatchMethodsource public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с указанными параметрами. Предоставляет ОО оболочку для call_user_func_array
Параметры
- string
$method - Имя вызываемого метода
- array
$paramsoptional array() - Список параметров для использования при вызове $method
Возвращает
mixedВозвращает результат вызова метода
logsource public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. Для получения более подробной информации о записи в логи, см. CakeLog::write().
Параметры
- string
$msg - Сообщение в лог
- integer
$typeoptional LOG_ERR - Константа типа ошибки. Определена в app/Config/core.php.
- null|string|array
$scopeoptional null - Область(и), в которой создаётся сообщение в лог. Для получения более подробной информации о областях ведения журнала, см. CakeLog::config().
Возвращает
booleanРезультат записи в лог
requestActionsource 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.
Параметры
- string|array
$url - Строковый или массивный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- array
$extraoptional array() - Если массив включает ключ "return", он устанавливает AutoRender в значение true. Также может использоваться для отправки данных GET/POST, а также именованных/переданных аргументов.
Возвращает
mixedБулево значение true или false при успехе/неудачи, или содержимое рендерного действия, если в $extra установлен 'return'
toStringsource public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по необходимости.
Возвращает
stringНазвание этого класса
Константы, унаследованные от Shell
CODE_ERROR, NORMAL, QUIET, VERBOSE |
Краткое описание свойств
Краткое описание свойств, унаследованных от BakeTask
Свойства, унаследованные от Shell
$OptionParsersource
public ConsoleOptionParser
Экземпляр ConsoleOptionParser, настроенный для этого класса.
$_lastWrittensource
protected целое число
Количество байтов, последнене записанных в поток вывода, используется при перезаписи предыдущего сообщения.
$modelClasssource
public строка
Имя основного класса модели оболочки, первая модель в свойстве $uses.
null $usessource
public массив
Содержит модели для загрузки и создания экземпляров.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::$usesarray()
© 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.7/class-ControllerTask.html