Класс FixtureTask
Класс задач для создания и обновления файлов фикстур.
- Объект
-
Shell -
AppShell -
BakeTask -
FixtureTask
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение Cake/Console/Command/Task/FixtureTask.php
Подробное описание методов
__constructsource public
__construct( ConsoleOutput $stdout null , ConsoleOutput $stderr null , ConsoleInput $stdin null )
Переопределение инициализации
Параметры
-
ConsoleOutput$stdoutнеобязательно null - Объект ConsoleOutput для стандартного вывода.
-
ConsoleOutput$stderrнеобязательно null - Объект ConsoleOutput для стандартного потока ошибок.
-
ConsoleInput$stdinнеобязательно null - Объект ConsoleInput для стандартного ввода.
Переопределяет
Shell::__construct() _generateRecordssource protected
_generateRecords( array $tableInfo , integer $recordCount 1 )
Генерирует строковое представление записей
Параметры
- массив
$tableInfo - Массив схемы таблицы
- целое число
$recordCountнеобязательно 1 - Количество записей для генерации.
Возвращает
arrayМассив записей для использования в фикстуре.
_generateSchemasource protected
_generateSchema( array $tableInfo )
Генерирует строковое представление схемы.
Параметры
- массив
$tableInfo - Массив схемы таблицы
Возвращает
stringОпределения полей
_getRecordsFromTablesource protected
_getRecordsFromTable( string $modelName , string $useTable null )
Взаимодействие с пользователем для получения пользовательского SQL-условия и использование этого условия для извлечения данных для создания фикстуры.
Параметры
- строка
$modelName - Имя модели, из которой брать записи.
- строка
$useTableнеобязательно null - Имя таблицы для использования.
Возвращает
arrayМассив записей.
_makeRecordStringsource protected
_makeRecordString( array $records )
Преобразование массива $records в строку.
Параметры
- массив
$records - Массив записей, которые нужно преобразовать в строку
Возвращает
stringСтроковое значение массива $records.
allsource public
all( )
Выпечка всех фикстур сразу. Будет выпекать фикстуры только для существующих моделей.
bakesource public
bake( string $model , string $useTable false , array $importOptions array() )
Собирает и записывает файл фикстуры
Параметры
- строка
$model - Имя модели для выпечки.
- строка
$useTableнеобязательно false - Имя таблицы для использования.
- массив
$importOptionsнеобязательно array() - Параметры для public $import
Возвращает
string|nullСодержимое фикстуры, в противном случае null.
executesource public
execute( )
Метод выполнения, всегда используемый для задач Обрабатывает передачу в интерактивные, именованные или все процессы.
Переопределяет
BakeTask::execute() generateFixtureFilesource public
generateFixtureFile( string $model , string $otherVars )
Генерирует файл фикстуры и записывает его на диск
Параметры
- строка
$model - Имя модели, которая генерируется
- строка
$otherVars - Содержимое файла фикстуры.
Возвращает
stringСодержимое, сохраненное в файле фикстуры.
getOptionParsersource public
getOptionParser( )
Получает экземпляр парсера параметров и настраивает его.
Возвращает
ConsoleOptionParserConsoleOptionParser
Переопределяет
Shell::getOptionParser() getPathsource public
getPath( )
Получить путь к фикстурам.
Возвращает
stringПуть к фикстурам
Переопределяет
BakeTask::getPath() importOptionssource public
importOptions( string $modelName )
Взаимодействует с пользователем для настройки массива параметров импорта. Для фикстуры.
Параметры
- строка
$modelName - Имя модели, с которой вы работаете.
Возвращает
arrayМассив параметров импорта.
Наследованные методы от BakeTask
startupsource public
startup( )
Отключить кэширование и включить отладку для выпечки. Это заставляет использовать самую последнюю схему базы данных.
Переопределяет
Shell::startup() Наследованные методы от Shell
__getsource public
__get( string $name )
Перегрузка get для ленивого построения задач
Параметры
- строка
$name - Имя свойства для доступа.
Возвращает
ShellОбъект Task
__issetsource public
__isset( string $name )
Лениво загружает модели с помощью метода loadModel() если они объявлены в $uses
Параметры
- строка
$name - Имя модели, которую нужно искать.
_checkUnitTestsource protected
_checkUnitTest( )
Действие по созданию модульного теста
Возвращает
booleanУспех
_controllerNamesource protected
_controllerName( string $name )
Создаёт правильное множественное имя контроллера для указанного имени класса контроллера
Параметры
- строка
$name - Имя класса контроллера
Возвращает
stringМножественное имя контроллера
_controllerPathsource protected
_controllerPath( string $name )
Создаёт правильный путь к контроллеру для указанного имени класса контроллера
Параметры
- строка
$name - Имя класса контроллера
Возвращаемое значение
stringПуть к контроллеру
_displayHelpsource protected
_displayHelp( string $command )
Отображает справку в правильном формате
Параметры
- строка
$command - Команда, для которой требуется справка.
_getInputsource protected
_getInput( string $prompt , string|array $options , string $default )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка|массив
$options - Массив или строка опций.
- строка
$default - Значение ввода по умолчанию.
Возвращаемое значение
Eitherзначение по умолчанию или введенное пользователем значение.
_loadModelssource protected
_loadModels( )
Если $uses — массив, загружает каждый из моделей в массиве
Возвращаемое значение
booleanbool
_modelKeysource protected
_modelKey( string $name )
Создаёт правильный подчеркнутый ключ модели для ассоциаций
Параметры
- строка
$name - Имя класса модели
Возвращаемое значение
stringЕдинственное имя ключа модели
_modelNamesource protected
_modelName( string $name )
Создаёт правильное именованное (единственное число) имя модели для указанного имени
Параметры
- строка
$name - Имя
Возвращаемое значение
stringИменованное и единственное имя модели
_modelNameFromKeysource protected
_modelNameFromKey( string $key )
Создаёт правильное имя модели из внешнего ключа
Параметры
- строка
$key - Внешний ключ
Возвращаемое значение
stringИмя модели
_pluginPathsource protected
_pluginPath( string $pluginName )
Находит правильный путь к плагину. Просматривает $pluginPaths для нужного плагина.
Параметры
- строка
$pluginName - Имя плагина, например, DebugKit
Возвращаемое значение
stringПуть к плагину.
_pluralHumanNamesource protected
_pluralHumanName( string $name )
Создаёт множественное имя, используемое в представлениях
Параметры
- строка
$name - Имя контроллера
Возвращаемое значение
stringМножественное имя
_pluralNamesource protected
_pluralName( string $name )
Создаёт множественное имя для представлений
Параметры
- строка
$name - Используемое имя
Возвращаемое значение
stringМножественное имя для представлений
_singularHumanNamesource protected
_singularHumanName( string $name )
Создаёт единственное имя, используемое в представлениях
Параметры
- строка
$name - Имя контроллера
Возвращаемое значение
stringЕдинственное имя
_singularNamesource protected
_singularName( string $name )
Создаёт единственное имя для использования в представлениях.
Параметры
- строка
$name - Значение множественного числа с нижним подчеркиванием.
Возвращаемое значение
stringИмя
_useLoggersource protected
_useLogger( boolean $enable true )
Используется для включения или выключения вывода потока регистрации в stdout и stderr. Если вы не хотите видеть в stdout или stderr всё, что регистрируется через CakeLog, вызовите эту функцию с первым параметром false
Параметры
- логический
$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 )
Создаёт файл по заданному пути
Параметры
- строка
$path - Куда поместить файл.
- строка
$contents - Содержимое файла.
Возвращаемое значение
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::createFiledispatchShellsource public
dispatchShell( )
Перенаправить команду в другую оболочку. Похоже на 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::ininitializesource public
initialize( )
Инициализирует Shell, действует как конструктор для подклассов, позволяет настроить задачи перед выполнением шелла.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::initializeloadModelsource public
loadModel( string $modelClass null , mixed $id null )
Загружает и создает экземпляры моделей, необходимых для этого шелла.
Параметры
- строка
$modelClassнеобязательно null - Имя класса модели для загрузки
- смешанное
$idнеобязательно null - Начальный ID, который должен иметь созданный экземпляр класса модели
Возвращает
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 )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит просто перевод строки.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют параметрам verbose и quiet в большинстве шеллов. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.
Параметры
- строка|массив
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество добавляемых переводов строк
- целое число
$levelнеобязательноShell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanВозвращает количество байтов, возвращенных при записи в стандартный вывод.
Ссылка
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Возвращает количество байтов, возвращенных при записи в стандартный вывод.
paramsource public
param( string $name )
Безопасно получить значения из $this->params.
Параметры
- строка
$name - Имя параметра для получения.
Возвращает
string|boolean|nullЗначение. Возвращает null, если параметр не существует.
runCommandsource public
runCommand( string $command , array $argv )
Выполняет Shell с предоставленными argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в шелле.
- Совпадающее имя задачи.
-
main()метод.
Если шелл реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с оригинальным именем метода в argv.
Параметры
- строка
$command - Имя команды для выполнения в этом шелле. Если этот аргумент пустой, и у шелла есть метод
main(), этот метод будет вызван вместо него. - массив
$argv - Массив аргументов для выполнения шелла. В этом массиве должно отсутствовать имя шелла.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::runCommandshortPathsource public
shortPath( string $file )
Делает абсолютный путь к файлу более читаемым.
Параметры
- строка
$file - Абсолютный путь к файлу
Возвращает
stringсокращенный путь
Ссылка
http://book.cakephp.org/2.0/ru/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/ru/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 integer
Количество байтов, последне записанных в поток вывода, используемое при перезаписи предыдущего сообщения.
$modelClasssource
public string
Основной класс модели этого командного интерпретатора, первая модель в свойстве $uses.
null $usessource
public array
Содержит модели для загрузки и инициализации.
Ссылка
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-FixtureTask.html