Класс FormHelper
Библиотека помощника для форм.
Автоматическое создание HTML-форм на основе заданных данных.
- Cake\View\Helper реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait
-
Cake\View\Helper\FormHelper использует Cake\View\Helper\IdGeneratorTrait , Cake\View\Helper\SecureFieldTokenTrait , Cake\View\StringTemplateTrait
Ссылка: https://book.cakephp.org/3.0/ru/views/helpers/form.html
Расположение: View/Helper/FormHelper.php
Краткое описание констант
-
string'skip'
Краткое описание свойств
- Контекст текущей формы.
$_contextprotected - Фабрика контекста.
$_contextFactoryprotected -
$_datetimeOptionsprotectedСпециальные параметры, используемые для ввода дат и времени.array -
$_datetimePartsprotectedРазличные виджеты, составляющие виджет выбора даты и времени.array -
$_defaultConfigprotectedНастройки по умолчанию для помощника.array -
$_defaultWidgetsprotectedВиджеты по умолчаниюarray -
$_lastActionprotectedstringЗначение атрибута action последней созданной формы. Используется для создания хэшей, специфичных для формы/запроса, для SecurityComponent.
- Регистр для виджетов ввода.
$_registryprotected -
$_unlockedFieldsprotectedarrayМассив имён полей, которые были исключены из хэша Token, используемого методом validatePost SecurityComponent.
-
$_valueSourcesprotectedИсточники, которые будут использоваться при получении заполненных значений ввода.array -
$fieldspublicСписок созданных полей, используется с защищёнными формами.array -
$helperspublicДругие помощники, используемые FormHelperarray -
$requestTypepublicОпределяет тип создаваемой формы. Устанавливается методом FormHelper::create().string|null
Краткое описание магических свойств
Унаследованные свойства
-
_View,_helperMap,fieldset,plugin,request,tags,theme_config,_configInitialized_idPrefix,_idSuffixes_templater
Краткое описание методов
- __call() public
Обработчик отсутствующего метода — реализует различные простые типы ввода. Используется для создания элементов ввода различных типов. Например,
$this->Form->text();создаст<input type="text" />, а$this->Form->range();создаст<input type="range" /> - __construct() publicСоздает виджеты и привязывает поставщики контекста по умолчанию
- _csrfField() protected
Возвращает элемент CSRF ввода, если данные запроса присутствуют. Используется для защиты форм в сочетании с CsrfComponent и SecurityComponent
- _datetimeOptions() protectedВспомогательный метод для преобразования данных опций FormHelper в формат виджета.
- _extractOption() protectedИзвлекает одну опцию из массива опций.
- _formUrl() protectedСоздаёт URL для формы на основе опций.
- _getContext() protectedНаходит соответствующего поставщика контекста для данных.
- _getInput() protectedГенерирует элемент ввода.
- _getLabel() protectedГенерирует метку для ввода.
- _groupTemplate() protectedГенерирует элемент шаблона группы.
- _initInputField() protected
Устанавливает значения по умолчанию для поля и добавляет поле в хеш безопасности формы. Также добавит класс ошибки, если поле содержит ошибки валидации.
- _inputContainerTemplate() protectedГенерирует шаблон контейнера ввода.
- _inputLabel() protectedГенерирует метку для вызова input().
- _inputType() protected
Возвращает тип ввода, который был угадан для заданного имени поля, на основе внутреннего типа, к которому он связан, его имени и переменных, которые можно найти в шаблоне представления.
- _isDisabled() protectedОпределяет, отключено ли поле.
- _lastAction() protectedПравильно сохраняет URL последнего действия формы.
- _magicOptions() protectedМагически устанавливает тип опции и соответствующие опции.
- _optionsOptions() protected
Выбирает переменную, содержащую опции для поля выбора, если оно присутствует, и устанавливает значение в ключ «options» в массиве опций.
- _parseOptions() protectedГенерирует массив опций ввода.
- _secure() protected
Определяет, какие поля формы должны использоваться для хэша. Заполняет $this->fields
- _secureFieldName() protectedПолучить имя поля для использования с _secure().
- _singleDatetime() protectedВспомогательный метод для различных методов однокомпонентного элемента времени.
- addContextProvider() publicДобавить новый тип контекста.
- addWidget() publicДобавить новый виджет в FormHelper.
- allControls() public
Генерирует набор элементов управления для
$fields. Если $fields пусто, будут использоваться поля текущей модели. - allInputs() public
Генерирует набор элементов управления для
$fields. Если $fields пусто, будут использоваться поля текущей модели. - button() publicСоздаёт тег
<button>. - checkbox() publicСоздаёт виджет элемента checkbox.
- context() publicПолучить экземпляр контекста для текущего набора форм.
- contextFactory() publicУстановить фабрику контекста, которую будет использовать помощник.
- control() publicГенерирует элемент управления формы, включая метку и обертывающий div.
- controls() publicГенерирует набор элементов управления для
$fieldsв элементе fieldset. - create() publicВозвращает элемент HTML-формы.
- date() publicГенерирует элементы ввода даты.
- dateTime() publicВозвращает набор элементов SELECT для полной настройки даты и времени: день, месяц и год, а затем время.
- day() publicВозвращает элемент SELECT для дней.
- end() public
Закрывает HTML-форму, очищает значения, установленные FormHelper::create(), и записывает поля скрытых элементов ввода, где это уместно.
- error() publicВозвращает отформатированное сообщение об ошибке для заданного поля формы, '' если ошибок нет.
- fieldset() publicОбернуть набор элементов ввода в fieldset
- file() publicСоздаёт виджет элемента file.
- getSourceValue() publicПолучает значение одного поля из доступных источников.
- getValueSources() publicПолучает источники значений.
- hidden() publicСоздаёт скрытое поле ввода.
- hour() publicВозвращает элемент SELECT для часов.
- implementedEvents() publicОбработчики событий.
- input() publicГенерирует элемент управления формы, включая метку и обертывающий div.
- inputs() publicГенерирует набор элементов управления для
$fieldsв элементе fieldset. - isFieldError() publicВозвращает true, если для данного поля есть ошибка, иначе false.
- label() publicВозвращает отформатированный элемент LABEL для HTML-форм.
- meridian() publicВозвращает элемент SELECT для AM или PM.
- minute() publicВозвращает элемент SELECT для минут.
- month() publicВозвращает элемент SELECT для месяцев.
- multiCheckbox() publicСоздаёт набор элементов checkbox на основе опций.
- postButton() publicСоздаёт тег
<button>с окружающим<form>, который по умолчанию отправляет данные по POST. - postLink() public
Создаёт HTML-ссылку, но получает URL с помощью указанного метода (по умолчанию POST). Требуется включённый JavaScript в браузере.
- radio() publicСоздаёт набор радио-элементов.
- resetTemplates() publicВосстанавливает значения по умолчанию, встроенные в FormHelper.
- secure() public
Генерирует скрытое поле с хэш-кодом безопасности, основанным на полях, используемых в форме.
- select() publicВозвращает отформатированный элемент SELECT.
- setValueSources() publicУстанавливает источники значений.
- submit() public
Создаёт элемент кнопки отправки. Этот метод сгенерирует элементы
<input />, которые можно использовать для отправки и сброса форм, используя $options. Кнопки изображения можно создать, предоставив путь к изображению для $caption. - textarea() publicСоздаёт виджет textarea.
- time() publicГенерирует поля времени.
- unlockField() public
Добавляет или получает список полей, которые в настоящее время разблокированы. Разблокированные поля не включаются в хэш поля, используемый SecurityComponent разблокировка поля после его добавления в список защищённых полей удалит его из списка полей.
- widget() publicОтображает виджет с заданным именем.
- widgetRegistry() publicУстанавливает реестр виджетов, который будет использовать помощник.
- year() publicВозвращает элемент SELECT для годов
Подробное описание методов
__call()source public
__call( string $method , array $params )
Обработчик отсутствующего метода - реализует различные простые типы ввода. Используется для создания элементов ввода различных типов. Например, $this->Form->text(); создаст <input type="text" />, а $this->Form->range(); создаст <input type="range" />
Использование
$this->Form->search('User.query', ['value' => 'test']); Создаст элемент ввода, подобный:
<input type="search" id="UserQuery" name="User[query]" value="test" />
Первый аргумент типа ввода всегда должен быть именем поля в формате Model.field. Второй аргумент всегда должен быть массивом атрибутов для ввода.
Параметры
- строка
$method - Имя метода/тип ввода для создания.
- массив
$params - Параметры для вызова метода
Возвращает
строкуОтформатированный метод ввода.
Исключения
Cake\Core\Exception\ExceptionКогда для метода вызова нет параметров.
Переопределяет
Cake\View\Helper::__call() __construct()source public
__construct( Cake\View\View $View , array $config [] )
Создаёт виджеты и связывает поставщики контекста по умолчанию
Параметры
-
Cake\View\View$View - Представление, к которому подключается этот помощник.
- массив
$configнеобязательно [] - Параметры настройки помощника.
Переопределяет
Cake\View\Helper::__construct() _csrfField()source protected
_csrfField( )
Возвращает элемент CSRF, если данные запроса присутствуют. Используется для защиты форм в сочетании с CsrfComponent и SecurityComponent
Возвращает
строку_datetimeOptions()source protected
_datetimeOptions( array $options )
Вспомогательный метод для преобразования данных параметров FormHelper в формат виджета.
Параметры
- массив
$options - Параметры для преобразования.
Возвращает
массивПреобразованные параметры.
_extractOption()source protected
_extractOption( string $name , array $options , mixed $default null )
Извлекает один параметр из массива параметров.
Параметры
- строка
$name - Имя параметра для извлечения.
- массив
$options - Массив параметров, из которого нужно извлечь.
- смешанный
$defaultнеобязательно null - Значение параметра по умолчанию
Возвращает
смешанныйсодержимое параметра или значение по умолчанию
_formUrl()source protected
_formUrl( Cake\View\Form\ContextInterface $context , array $options )
Создаёт URL для формы на основе параметров.
Параметры
-
Cake\View\Form\ContextInterface$context - Объект контекста для использования.
- массив
$options - Массив параметров из create()
Возвращает
строкаАтрибут действия для формы.
_getContext()source protected
_getContext( mixed $data [] )
Находит соответствующего поставщика контекста для данных.
Если ни один тип не может быть сопоставлен, будет возвращён NullContext.
Параметры
- смешанный
$dataнеобязательно [] - Данные для получения поставщика контекста.
Возвращает
Cake\View\Form\ContextInterfaceПоставщик контекста.
Исключения
RuntimeExceptionесли класс контекста не реализует интерфейс ContextInterface.
_getInput()source protected
_getInput( string $fieldName , array $options )
Генерирует элемент ввода
Параметры
- строка
$fieldName - Имя поля
- массив
$options - Параметры для элемента ввода
Возвращает
строкаСгенерированный элемент ввода
_getLabel()source protected
_getLabel( string $fieldName , array $options )
Генерирует метку для элемента ввода
Параметры
- строка
$fieldName - Имя поля, для которого генерируется метка.
- массив
$options - Список параметров.
Возвращает
boolean|строкаfalse или сгенерированный элемент метки
_groupTemplate()source protected
_groupTemplate( array $options )
Генерирует элемент шаблона группы
Параметры
- массив
$options - Параметры для шаблона группы
Возвращает
строкаСгенерированный шаблон группы
_initInputField()source protected
_initInputField( string $field , array $options [] )
Устанавливает значения по умолчанию для поля и добавляет поле в хэш ввода безопасности формы. Также добавит класс ошибки, если поле содержит ошибки валидации.
Параметры
-
secure- boolean, указывает, нужно ли добавлять поле к полям безопасности. Отключение поля с помощью параметраdisabled, также исключит поле из хэшированного ключа. -
default- смешанный - Значение, которое нужно использовать, если в контексте формы нет значения. -
disabled- смешанный - Либо boolean, указывающий состояние отключения, либо строка в числовом индексированном значении. -
id- смешанный - Еслиtrue, он будет сгенерирован автоматически на основе имени поля.
Этот метод преобразует числовой индексированный 'disabled' в ассоциативный массив значений. Внутренние компоненты FormHelper ожидают ассоциативные параметры.
Выход этой функции — более полный набор атрибутов ввода, которые можно передать в виджет формы для генерации фактического ввода.
Параметры
- строка
$field - Имя поля для инициализации параметров.
- массив
$optionsнеобязательно [] - Массив параметров, для добавления дополнительных параметров.
Возвращает
массивМассив параметров для ввода.
_inputContainerTemplate()source protected
_inputContainerTemplate( array $options )
Генерирует шаблон контейнера ввода
Параметры
- массив
$options - Параметры для шаблона контейнера ввода
Возвращает
строкаСгенерированный шаблон контейнера ввода
_inputLabel()source protected
_inputLabel( string $fieldName , string $label , array $options )
Генерирует метку для вызова input().
$options может содержать хеш с переопределениями id. Эти переопределения будут использоваться вместо сгенерированных значений, если присутствуют.
Параметры
- строка
$fieldName - Имя поля, для которого генерируется метка.
- строка
$label - Текст метки.
- массив
$options - Параметры для элемента метки.
Возвращает
строкаСгенерированный элемент метки
_inputType()source protected
_inputType( string $fieldName , array $options )
Возвращает тип ввода, который был угадан для заданного fieldName, на основе внутреннего типа, связанного с ним, его имени и переменных, которые можно найти в шаблоне представления
Параметры
- строка
$fieldName - имя поля, для которого нужно определить тип
- массив
$options - параметры, переданные методу input
Возвращает
строка_isDisabled()source protected
_isDisabled( array $options )
Определяет, отключено ли поле.
Параметры
- массив
$options - Набор параметров.
Возвращает
логическое значениеОтключено ли поле.
_lastAction()source protected
_lastAction( string|array $url )
Правильно сохраняет URL последнего действия формы.
Параметры
- строка|массив
$url - URL последней формы.
_magicOptions()source protected
_magicOptions( string $fieldName , array $options , boolean $allowOverride )
Магически устанавливает тип параметра и соответствующие параметры.
Параметры
- строка
$fieldName - Имя поля, для которого генерируются параметры.
- массив
$options - Список параметров.
- логическое значение
$allowOverride Разрешено ли этому методу перезаписывать ключ 'type' в массиве параметров.
Возвращает
массив_optionsOptions()source protected
_optionsOptions( string $fieldName , array $options )
Выбирает переменную, содержащую параметры для поля select, если она присутствует, и устанавливает значение в ключ 'options' в массиве параметров.
Параметры
- строка
$fieldName - Имя поля, для которого нужно найти параметры.
- массив
$options - Список параметров.
Возвращает
массив_parseOptions()source protected
_parseOptions( string $fieldName , array $options )
Генерирует массив параметров ввода.
Параметры
- строка
$fieldName - Имя поля, для которого нужно разобрать параметры.
- массив
$options - Список параметров.
Возвращает
массивПараметры
_secure()source protected
_secure( boolean $lock , string|array $field , mixed $value null )
Определяет, какие поля формы следует использовать для хэширования. Заполняет $this->fields
Параметры
- логическое значение
$lock Должно ли это поле быть частью валидации или исключено как часть unlockedFields.
- строка|массив
$field Ссылка на поле для защиты. Может быть строкой с разделителем точек для указания вложенности или массивом частей имени поля.
- смешанный
$valueнеобязательно null - Значение поля, если его значение не должно быть изменено.
_secureFieldName()source protected
_secureFieldName( string $name )
Получение имени поля для использования с _secure().
Анализирует атрибут name, чтобы создать имя с разделителями точек для использования в хэше защищённых полей. Если имя файла имеет вид Model[field], возвращается массив частей имени поля, таких как ['Model', 'field'].
Параметры
- строка
$name - Атрибут name входных данных формы.
Возвращает
массивМассив параметров имени поля, таких как ['Model.field'] или ['Model', 'field'] для массивов полей, или пустой массив, если $name пустой.
_singleDatetime()source protected
_singleDatetime( array $options , string $keep )
Вспомогательный метод для различных методов компонентов одиночного даты/времени.
Параметры
- массив
$options - Массив параметров.
- строка
$keep - Параметр, который не нужно отключать.
Возвращает
массивaddContextProvider()source public
addContextProvider( string $type , callable $check )
Добавление нового типа контекста.
Типы контекста Form позволяют FormHelper взаимодействовать с поставщиками данных, которые поступают извне CakePHP. Например, если вы хотите использовать альтернативную ORM, такую как Doctrine, вы можете создать и подключить новый класс контекста, чтобы позволить FormHelper читать метаданные из Doctrine.
Параметры
- строка
$type Тип контекста. Этот ключ может быть использован для перезаписи существующих поставщиков.
- вызываемый объект
$check Вызываемый объект, который возвращает объект, когда контекст формы является правильного типа.
addWidget()source public
addWidget( string $name , array|Cake\View\Widget\WidgetInterface $spec )
Добавление нового виджета в FormHelper.
Позволяет добавлять или заменять экземпляры виджетов с помощью пользовательского кода.
Параметры
- строка
$name - Имя виджета. Например, 'text'.
- массив|
Cake\View\Widget\WidgetInterface$spec Имя класса в виде строки или объект, реализующий WidgetInterface.
allControls()source public
allControls( array $fields [] , array $options [] )
Генерирует набор элементов управления для $fields. Если $fields пустой, будут использоваться поля текущей модели.
Вы можете настроить отдельные элементы управления через $fields.
$this->Form->allControls([ 'name' => ['label' => 'custom label'] ]);
Вы можете исключить поля, указав их как false:
$this->Form->allControls(['title' => false]);
В приведенном выше примере для поля title не будет сгенерировано никакого поля.
Параметры
- массив
$fieldsнеобязательно [] Массив настроек для полей, которые будут сгенерированы. Этот массив позволяет задавать пользовательские типы, метки или другие параметры.
- массив
$optionsнеобязательно [] Массив параметров. Допустимые ключи: -
fieldsetУстановите в false, чтобы отключить поле fieldset. Вы также можете передать массив параметров, которые будут применены в качестве атрибутов HTML к тегу fieldset. Если вы передадите пустой массив, fieldset будет включён -legendУстановите в false, чтобы отключить легенду для сгенерированного набора элементов управления. Или укажите строку, чтобы настроить текст легенды.
Возвращает
строкаЗавершенные элементы управления формы.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-formsallInputs()source public
allInputs( array $fields [] , array $options [] )
Создать набор элементов управления для $fields. Если $fields пусто, будут использованы поля текущей модели.
Устарело
3.4.0 Используйте FormHelper::allControls() вместо этого.Параметры
- массив
$fieldsнеобязательно [] Массив настроек для полей, которые будут сгенерированы. Этот массив позволяет задавать пользовательские типы, метки или другие параметры.
- массив
$optionsнеобязательно [] Массив параметров. Допустимые ключи: -
fieldsetУстановите в false, чтобы отключить fieldset. Также можно передать массив параметров, которые будут применены в качестве атрибутов HTML к тегу fieldset. Если передать пустой массив, fieldset будет включен -legendУстановите в false, чтобы отключить легенду для сгенерированного набора элементов управления. Или укажите строку для настройки текста легенды.
Возвращает
строкаЗавершенные элементы управления формы.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-formsbutton()source public
button( string $title , array $options [] )
Создаёт тег <button>.
Атрибут type по умолчанию type="submit". Можно изменить его на другое значение, используя $options['type'].
Параметры:
-
escape- закодировать в HTML сущности $title кнопки. По умолчанию false.
Параметры
- строка
$title - Подпись кнопки. Не кодируется автоматически в HTML.
- массив
$optionsнеобязательно [] - Массив опций и атрибутов HTML.
Возвращает
строкаТег HTML кнопки.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-button-elementscheckbox()source public
checkbox( string $fieldName , array $options [] )
Создаёт виджет элемента ввода типа checkbox.
Параметры:
-
value- значение checkbox -
checked- boolean, указывает, что этот checkbox отмечен. -
hiddenField- boolean, указывает, нужно ли включать скрытый элемент ввода со значением ''. -
disabled- создать отключённый элемент ввода. -
default- установить значение по умолчанию для checkbox. Это позволяет начать с отмеченных checkbox без необходимости проверки данных POST. Соответствующее значение POST перекроет значение по умолчанию.
Параметры
- строка
$fieldName - Имя поля, например "modelname.fieldname"
- массив
$optionsнеобязательно [] - Массив атрибутов HTML.
Возвращает
строка|массивЭлемент HTML текстового поля ввода.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-checkboxescontext()source public
context( Cake\View\Form\ContextInterface|null $context null )
Получить экземпляр контекста для текущего набора форм.
Если активной формы нет, будет возвращено null.
Параметры
-
Cake\View\Form\ContextInterface|null$contextнеобязательно null - Новый контекст при установке или null для получения.
Возвращает
Cake\View\Form\ContextInterfaceКонтекст формы.
contextFactory()source public
contextFactory( Cake\View\Form\ContextFactory $instance null , array $contexts [] )
Установить фабрику контекста, которую будет использовать помощник.
Параметры
-
Cake\View\Form\ContextFactory$instanceнеобязательно null - Экземпляр фабрики контекста для установки.
- массив
$contextsнеобязательно [] - Массив поставщиков контекста.
Возвращает
Cake\View\Form\ContextFactorycontrol()source public
control( string $fieldName , array $options [] )
Генерирует элемент управления формы, включая метку и обертывающую div.
Параметры
См. каждый метод типа поля для получения дополнительной информации. Любые параметры, являющиеся частью $attributes или $options для различных методов type, могут быть включены в $options для input(). Кроме того, любые неизвестные ключи, которые не находятся в списке ниже или не являются частью параметров выбранного типа, будут рассматриваться как обычный атрибут HTML для сгенерированного ввода.
-
type- принудительно задать тип виджета. Например,type => 'select' -
label- либо текстовая метка, либо массив опций для метки. См. FormHelper::label(). -
options- для виджетов, которые принимают параметры, например, radio, select. -
error- управлять сообщением об ошибке, которое генерируется. Установите вfalseдля отключения любого вида отчётов об ошибках (ошибки поля и сообщения об ошибках). -
empty- строка или булево значение для включения пустых вариантов в выпадающем списке. -
nestedInput- используется с элементами ввода checkbox и radio. Установите в false для рендеринга элементов ввода вне элементов метки. Может быть установлено в true для любого элемента ввода, чтобы принудительно расположить элемент ввода внутри метки. Если вы включите этот параметр для радиокнопок, вам также нужно будет изменить шаблонradioWrapperпо умолчанию. -
templates- шаблоны, которые вы хотите использовать для этого элемента ввода. Любые шаблоны будут объединены поверх уже загруженных шаблонов. Этот параметр может быть именем файла в /config, содержащим шаблоны, которые вы хотите загрузить, или массивом шаблонов для использования. -
labelOptions- либоfalseдля отключения метки вокруг вложенных виджетов (например, радио, многострочный чекбокс), либо массив атрибутов для тега метки.selectedбудет добавлен к любым классам, например,class => 'myclass'если виджет отмечен
Параметры
- строка
$fieldName - Должно быть "modelname.fieldname"
- массив
$optionsнеобязательно [] - Каждый тип ввода принимает разные параметры.
Возвращает
строкаЗавершенный виджет формы.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-form-inputscontrols()source public
controls( array $fields , array $options [] )
Сгенерировать набор элементов управления для $fields в рамках элемента fieldset.
Вы можете настроить отдельные элементы управления с помощью $fields.
$this->Form->controls([ 'name' => ['label' => 'custom label'], 'email' ]);
Параметры
- массив
$fields Массив полей для генерации. Этот массив позволяет задавать пользовательские типы, метки или другие параметры.
- массив
$optionsнеобязательно [] Массив опций. Допустимые ключи: -
fieldsetУстановите в false, чтобы отключить fieldset. Также можно передать массив параметров, которые будут применены в качестве атрибутов HTML к тегу fieldset. Если передать пустой массив, fieldset будет включен. -legendУстановите в false, чтобы отключить легенду для сгенерированного набора элементов управления. Или укажите строку для настройки текста легенды.
Возвращает
строкаЗавершенные элементы ввода формы.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-formscreate()source public
create( mixed $context null , array $options [] )
Возвращает элемент HTML-формы.
Параметры:
-
typeМетод формы по умолчанию автоматически определяется на основе контекста формы. Если метод isCreate() контекста формы возвращает false, будет выполнен запрос PUT. -
methodЯвно установить атрибут method формы. -
actionДействие контроллера, к которому отправляется форма (необязательно). Используйте этот параметр, если вам не нужно менять контроллер от текущего контроллера запроса. Устарело начиная с версии 3.2, используйтеurl. -
urlURL, к которому отправляется форма. Может быть строкой или массивом URL. Если используете 'url', оставьте 'action' неопределённым. -
encodingУстановить кодировку accept-charset для формы. По умолчаниюConfigure::read('App.encoding'). -
enctypeЯвно установить кодировку для формы. По умолчаниюtype => fileустановитenctypeвmultipart/form-data. -
templatesШаблоны, которые вы хотите использовать для этой формы. Все шаблоны будут объединены поверх уже загруженных шаблонов. Этот параметр может быть именем файла в /config, содержащим шаблоны для загрузки, или массивом шаблонов для использования. -
contextДополнительные параметры для класса контекста. Например, EntityContext принимает параметр 'table', который позволяет установить конкретный класс Table, на котором должна основываться форма. -
idPrefixПрефикс для сгенерированных атрибутов ID. -
valueSourcesИсточники, из которых должны считываться значения. См. FormHelper::setValueSources() -
templateVarsПредоставьте переменные шаблона для шаблона formStart.
Параметры
- mixed
$contextнеобязательно null Контекст, для которого определена форма. Может быть экземпляром ContextInterface, сущностью ORM, результатом набора ORM или массивом метаданных. Вы можете использовать false или null, чтобы создать форму без контекста.
- array
$optionsнеобязательно [] - Массив HTML-атрибутов и параметров.
Возвращаемое значение
СтрокаОтформатированный открывающий тег FORM.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#Cake\View\Helper\FormHelper::createdate()source public
date( string $fieldName , array $options [] )
Генерирует поля ввода даты.
Параметры:
См. dateTime() для параметров даты.
Параметры
- string
$fieldName - Префикс имени для элемента SELECT
- array
$optionsнеобязательно [] - Массив параметров
Возвращаемое значение
СтрокаСгенерированный набор выпадающих списков для выбранных форматов времени.
См. также
\Cake\View\Helper\FormHelper::dateTime() для параметров шаблона.dateTime()source public
dateTime( string $fieldName , array $options [] )
Возвращает набор элементов SELECT для полного форматирования даты и времени: день, месяц и год, а затем время.
Параметры даты:
-
empty- Если true, отображается пустой элемент выбора. Если строка, эта строка отображается как пустой элемент. -
value|defaultЗначение по умолчанию для поля ввода. Значение в$this->data, соответствующее имени поля, переопределит это значение. Если значение по умолчанию не задано, используетсяtime(). -
monthNamesЕсли false, будут использоваться двузначные числа вместо текста. Если массив, будет использован данный массив. -
minYearНаименьший год для использования в выпадающем списке года. -
maxYearМаксимальный год для использования в выпадающем списке года. -
orderYear- Порядок значений года в элементах выпадающего списка. Возможные значения 'asc', 'desc'. По умолчанию 'desc'.
Параметры времени:
-
empty- Если true, отображается пустой элемент выбора. Если строка, -
value|defaultЗначение по умолчанию для поля ввода. Значение в$this->data, соответствующее имени поля, переопределит это значение. Если значение по умолчанию не задано, используетсяtime(). -
timeFormatФормат времени для использования, 12 или 24. -
intervalИнтервал для выбора минут. По умолчанию 1. -
round- Установите вupилиdown, если хотите принудительно округлить в любом направлении. По умолчанию null. -
secondУстановите в true, чтобы включить выпадающий список секунд.
Для управления порядком полей ввода и любыми элементами/содержимым между ними, вы можете переопределить шаблон dateWidget. По умолчанию шаблон dateWidget:
{{month}}{{day}}{{year}}{{hour}}{{minute}}{{second}}{{meridian}}
Параметры
- string
$fieldName - Префикс имени для элемента SELECT
- array
$optionsнеобязательно [] - Массив параметров
Возвращаемое значение
СтрокаСгенерированный набор выпадающих списков для выбранных форматов даты и времени.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-date-and-time-inputsday()source public
day( string|null $fieldName null , array $options [] )
Возвращает элемент SELECT для дней.
Параметры:
-
empty- Если true, отображается пустой элемент выбора. Если строка, эта строка отображается как пустой элемент. -
valueВыбранное значение поля ввода.
Параметры
- string|null
$fieldNameнеобязательно null - Префикс имени для элемента SELECT
- array
$optionsнеобязательно [] - Параметры и HTML-атрибуты для элемента select
Возвращаемое значение
СтрокаСгенерированный выпадающий список дней.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-day-inputsend()source public
end( array $secureAttributes [] )
Закрывает HTML-форму, очищает значения, установленные FormHelper::create(), и при необходимости записывает поля ввода hidden.
Сбрасывает некоторые части состояния, общие для нескольких вызовов FormHelper::create(), до значений по умолчанию.
Параметры
- array
$secureAttributesнеобязательно [] Безопасные атрибуты, которые будут переданы в качестве HTML-атрибутов в сгенерированные поля ввода hidden для компонента Security.
Возвращаемое значение
СтрокаЗакрыващий тег FORM.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#closing-the-formerror()source public
error( string $field , string|array|null $text null , array $options [] )
Возвращает отформатированное сообщение об ошибке для заданного поля формы, '' если ошибок нет.
Использует шаблоны error, errorList и errorItem. Шаблоны errorList и errorItem используются для форматирования нескольких сообщений об ошибках на поле.
Параметры:
-
escapeboolean - Булево значение, указывающее нужно ли экранировать содержимое ошибки.
Параметры
- string
$field - Имя поля, например, "modelname.fieldname"
- string|array|null
$textнеобязательно null Сообщение об ошибке в виде строки или массива сообщений. Если массив, он должен быть хешем с именами ключей => сообщения.
- array
$optionsнеобязательно [] - См. выше.
Возвращаемое значение
СтрокаОтформатированные ошибки или ''.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#displaying-and-checking-errorsfieldset()source public
fieldset( string $fields '' , array $options [] )
Оборачивает набор полей ввода в область fieldset.
Параметры
- string
$fieldsнеобязательно '' - Поля ввода формы для обёртки в fieldset
- array
$optionsнеобязательно [] Массив параметров. Действительные ключи: -
fieldsetУстановите в false, чтобы отключить fieldset. Также можно передать массив параметров, которые будут применяться как атрибуты HTML к тегу fieldset. Если передаётся пустой массив, fieldset будет включён -legendУстановите в false, чтобы отключить легенду для сгенерированного набора полей ввода. Или передайте строку для настройки текста легенды.
Возвращаемое значение
СтрокаЗаполненные поля ввода формы.
file()source public
file( string $fieldName , array $options [] )
Создаёт виджет для ввода файла.
Параметры
- строка
$fieldName - Имя поля в формате "имя_модели.имя_поля"
- массив
$optionsнеобязательно [] - Массив HTML атрибутов.
Возвращает
строкаСозданный виджет для ввода файла.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-file-inputsgetSourceValue()source public
getSourceValue( string $fieldname , array|null $options [] )
Получает значение поля из доступных источников.
Параметры
- строка
$fieldname - Имя поля, для которого требуется значение.
- массив|null
$optionsнеобязательно [] - Опции, содержащие значения по умолчанию.
Возвращает
строка|nullЗначение поля, полученное из источников или значений по умолчанию.
getValueSources()source public
getValueSources( )
Получает источники значений.
Возвращает список, но по крайней мере один элемент, допустимых источников, таких как: 'context', 'data' и 'query'.
Возвращает
массивСписок источников значений.
hidden()source public
hidden( string $fieldName , array $options [] )
Создаёт скрытое поле ввода.
Параметры
- строка
$fieldName - Имя поля в формате "имя_модели.имя_поля"
- массив
$optionsнеобязательно [] - Массив HTML атрибутов.
Возвращает
строкаСгенерированное скрытое поле ввода.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-hidden-inputshour()source public
hour( string $fieldName , array $options [] )
Возвращает элемент SELECT для выбора часа.
Атрибуты:
-
empty- Если true, то пустой элемент выбора отображается. Если строка, то эта строка отображается как пустой элемент. -
valueВыбранное значение поля. -
formatУстановите в 12 или 24 для использования 12-часового или 24-часового формата. По умолчанию 24.
Параметры
- строка
$fieldName - Префикс имени для элемента SELECT
- массив
$optionsнеобязательно [] - Список HTML атрибутов
Возвращает
строкаЗаполненный элемент выбора часа
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-hour-inputsimplementedEvents()source public
implementedEvents( )
Обработчики событий.
Возвращает
массивПереопределяет
Cake\View\Helper::implementedEvents() input()source public
input( string $fieldName , array $options [] )
Генерирует элемент управления формы, включая метку и оборачивающую div.
Устарело
3.4.0 Используйте FormHelper::control() вместо этого.Параметры
- строка
$fieldName - Должно быть "имя_модели.имя_поля"
- массив
$optionsнеобязательно [] - Каждый тип ввода принимает разные опции.
Возвращает
строкаЗавершенный виджет формы.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-form-inputsinputs()source public
inputs( array $fields , array $options [] )
Генерирует набор элементов управления для $fields заключённых в элемент fieldset.
Устарело
3.4.0 Используйте FormHelper::controls() вместо этого.Параметры
- массив
$fields Массив полей, которые нужно сгенерировать. Этот массив позволяет настраивать типы, метки или другие параметры.
- массив
$optionsнеобязательно [] Массив параметров. Допустимые ключи: -
fieldsetУстановите в false, чтобы отключить fieldset. Также можно передать массив параметров, которые будут применены в качестве HTML атрибутов тегу fieldset. Если вы передадите пустой массив, fieldset будет включён. -legendУстановите в false, чтобы отключить легенду для сгенерированного набора ввода. Или передайте строку, чтобы настроить текст легенды.
Возвращает
строкаЗавершенные элементы ввода формы.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-formsisFieldError()source public
isFieldError( string $field )
Возвращает true, если для данного поля есть ошибка, иначе false.
Параметры
- строка
$field - Должно быть "имя_модели.имя_поля"
Возвращает
booleanЕсли есть ошибки, этот метод возвращает true, иначе false.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#displaying-and-checking-errorslabel()source public
label( string $fieldName , string|null $text null , array $options [] )
Возвращает отформатированный элемент LABEL для HTML-форм.
Автоматически сгенерирует атрибут `for`, если он не задан.
Опции
-
for- Установите атрибут `for`, если он не определён, атрибут `for` будет сгенерирован из параметра $fieldName с помощью FormHelper::_domId().
Примеры:
Текст и атрибут `for` генерируются из имени поля
echo $this->Form->label('published');
<label for="PostPublished">Published</label> Пользовательский текст:
echo $this->Form->label('published', 'Publish');
<label for="published">Publish</label> Пользовательские атрибуты:
echo $this->Form->label('published', 'Publish', [
'for' => 'post-publish'
]);
<label for="post-publish">Publish</label> Вложенный тег ввода:
echo $this->Form->label('published', 'Publish', [
'for' => 'published',
'input' => $this->text('published'),
]);
<label for="post-publish">Publish <input type="text" name="published"></label> Если вы хотите вложить теги ввода в метки, вам необходимо изменить шаблоны по умолчанию.
Параметры
- строка
$fieldName - Должно быть "имя_модели.имя_поля"
- строка|null
$textнеобязательно null Текст, который будет отображаться в поле метки. Если $text не определён, текст будет получен из имени поля.
- массив
$optionsнеобязательно [] - Массив HTML атрибутов.
Возвращает
строкаОтформатированный элемент LABEL.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-labelsmeridian()source public
meridian( string $fieldName , array $options [] )
Возвращает элемент SELECT для выбора AM или PM.
Атрибуты:
-
empty- Если true, то пустой элемент выбора отображается. Если строка, то эта строка отображается как пустой элемент. -
valueВыбранное значение поля.
Параметры
- строка
$fieldName - Префикс имени для элемента SELECT
- массив
$optionsнеобязательно [] - Массив опций
Возвращает
строкаЗавершенный элемент выбора AM или PM.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-meridian-inputsminute()source public
minute( string $fieldName , array $options [] )
Возвращает элемент SELECT для минут.
Атрибуты:
-
empty- Если true, пустой элемент select отображается. Если строка, эта строка отображается как пустой элемент. -
valueВыбранное значение входных данных. -
intervalИнтервал, с которым должны создаваться варианты минут. -
roundКак следует округлять значение, когда оно не попадает точно в интервал. Принимает 'up', 'down' и null.
Параметры
- строка
$fieldName - Префикс имени для элемента SELECT
- массив
$optionsнеобязательно [] - Массив опций.
Возвращает
строкаЗаполненный элемент ввода select для минут.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-minute-inputsmonth()source public
month( string $fieldName , array $options [] )
Возвращает элемент SELECT для месяцев.
Опции:
-
monthNames- Если false, будут использоваться двузначные числа вместо текста. Если массив, будет использован указанный массив. -
empty- Если true, пустой элемент select отображается. Если строка, эта строка отображается как пустой элемент. -
valueВыбранное значение входных данных.
Параметры
- строка
$fieldName - Префикс имени для элемента SELECT
- массив
$optionsнеобязательно [] - Атрибуты для элемента select
Возвращает
строкаСгенерированный выпадающий список месяцев.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-month-inputsmultiCheckbox()source public
multiCheckbox( string $fieldName , array|Traversable $options , array $attributes [] )
Создаёт набор флажков из опций.
Опции
-
escape- Если true, содержимое опций будет закодировано как HTML-сущности. По умолчанию true. -
valВыбранное значение входных данных. -
class- При использовании множественных = флажков имя класса, которое нужно применить к div. По умолчанию 'checkbox'. -
disabled- Управление атрибутом disabled. При создании флажковtrueотключает все флажки. Также можно установить disabled на список значений, которые нужно отключить при создании флажков. -
hiddenField- Установите в false, чтобы удалить скрытое поле, которое гарантирует, что значение всегда отправляется. -
label- Либоfalseдля отключения метки вокруг виджета, либо массив атрибутов для тега метки.selectedбудет добавлен ко всем классам, например,'class' => 'myclass'где виджет выбран
Может быть использован вместо поля select с атрибутом multiple.
Параметры
- строка
$fieldName - Атрибут имени SELECT
- массив|Перечисляемый
$options Массив элементов OPTION (в виде пар 'значение'=>'Текст'), которые будут использоваться в элементе флажков.
- массив
$attributesнеобязательно [] - HTML-атрибуты элемента select.
Возвращает
строкаОтформатированный элемент SELECT
См.
\Cake\View\Helper\FormHelper::select() для поддерживаемых форматов опций.postButton()source public
postButton( string $title , string|array $url , array $options [] )
Создаёт тег <button> с окружающим тегом <form>, который отправляет данные по методу POST по умолчанию.
Этот метод создаёт элемент <form>. Поэтому не используйте этот метод в уже открытой форме. Вместо этого используйте FormHelper::submit() или FormHelper::button() для создания кнопок внутри открытых форм.
Опции:
-
data- Массив с ключом/значением для передачи в скрытое поле ввода -
method- Метод запроса для использования. Установите в 'delete' или другие для моделирования запроса HTTP/1.1 DELETE (или других). По умолчанию 'post'. -
form- Массив с любыми опциями, которые FormHelper::create() может принять - Другие опции такие же, как и в методе button.
Параметры
- строка
$title - Текст кнопки. Не кодируется автоматически как HTML
- строка|массив
$url - URL как строка или массив
- массив
$optionsнеобязательно [] - Массив опций и HTML-атрибутов.
Возвращает
строкаТег HTML кнопки.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-standalone-buttons-and-post-linkspostLink()source public
postLink( string $title , string|array|null $url null , array $options [] )
Создаёт HTML-ссылку, но обращается к URL с указанным методом (по умолчанию POST). Требует включения javascript в браузере.
Этот метод создаёт элемент <form>. Если вы хотите использовать этот метод внутри существующей формы, вы должны использовать опцию block, чтобы новая форма была установлена в блок представления, который можно отобразить вне основной формы.
Если вам нужна только кнопка для отправки формы, используйте FormHelper::button() или FormHelper::submit().
Опции:
-
data- Массив с ключом/значением для передачи в скрытое поле ввода -
method- Метод запроса для использования. Установите в 'delete' для моделирования запроса HTTP/1.1 DELETE. По умолчанию 'post'. -
confirm- Сообщение подтверждения для отображения. -
block- Установите в true, чтобы добавить форму в блок представления "postLink", или укажите имя пользовательского блока. - Другие опции аналогичны методу HtmlHelper::link().
- Опция
onclickбудет заменена.
Параметры
- строка
$title - Содержимое, которое должно быть обернуто тегами .
- строка|массив|null
$urlнеобязательно null Относительный URL Cake или массив параметров URL, или внешний URL (начинается с http://)
- массив
$optionsнеобязательно [] - Массив HTML-атрибутов.
Возвращает
строкаЭлемент
<a />.Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-standalone-buttons-and-post-linksradio()source public
radio( string $fieldName , array|Traversable $options [] , array $attributes [] )
Создаёт набор радио-элементов.
Атрибуты:
-
value- Указывает значение, когда этот радио-элемент выбран. -
label- Либоfalseдля отключения метки вокруг виджета, либо массив атрибутов для тега метки.selectedбудет добавлен ко всем классам, например,'class' => 'myclass'где виджет выбран -
hiddenField- Булево значение, указывающее, хотите ли вы, чтобы результаты radio() включали скрытый элемент ввода со значением ''. Это полезно для создания наборов радио-элементов, которые не являются непрерывными. -
disabled- Установите вtrueилиdisabledдля отключения всех радио-кнопок. Используйте массив значений для отключения конкретных радио-кнопок. -
empty- Установите вtrueдля создания элемента ввода со значением '' в качестве первого варианта. Когдаtrueметка радио-элемента будет 'пустой'. Установите эту опцию в строку для управления значением метки.
Параметры
- строка
$fieldName - Имя поля, например, "modelname.fieldname"
- массив|Перечисляемый
$optionsнеобязательно [] - Массив опций радио-кнопок.
- массив
$attributesнеобязательно [] - Массив атрибутов.
Возвращает
строкаЗаполненный набор виджетов радио.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-radio-buttonsresetTemplates()source public
resetTemplates( )
Восстанавливает значения по умолчанию, встроенные в FormHelper.
Этот метод не будет сбрасывать шаблоны, установленные в пользовательских виджетах.
secure()source public
secure( array $fields [] , array $secureAttributes [] )
Генерирует скрытое поле с хешем безопасности, основанным на полях, используемых в форме.
Если задан $secureAttributes, эти атрибуты HTML будут объединены с скрытыми тегами ввода, сгенерированными для компонента безопасности. Это особенно полезно для установки атрибутов HTML5, таких как 'form'.
Параметры
- массив
$fieldsнеобязательно [] Если задано, указывает список полей, которые следует использовать при генерации хеша; в противном случае используется $this->fields.
- массив
$secureAttributesнеобязательно [] будет передан как атрибуты HTML в скрытые элементы ввода, сгенерированные для компонента безопасности.
Возвращает
строкаСкрытое поле ввода с хешем безопасности или пустая строка, когда защищённые формы не используются.
select()source public
select( string $fieldName , array|Traversable $options [] , array $attributes [] )
Возвращает отформатированный элемент SELECT.
Атрибуты:
-
multiple- отображает многострочный выпадающий список. Если установлено значение 'checkbox', будут созданы несколько флажков. -
empty- Если true, отображается пустой элемент выпадающего списка. Если строка, эта строка отображается как пустой элемент. -
escape- Если true, содержимое элементов будет закодировано в HTML-сущности. По умолчанию true. -
val- Выбранное значение входного поля. -
disabled- Управление атрибутом disabled. При создании выпадающего списка, установленное в true, отключает выпадающий список. Установленное в массив, отключает отдельные элементы списка.
Использование опций
Простой массив создаст обычные элементы:
$options = [1 => 'one', 2 => 'two'];
$this->Form->select('Model.field', $options)); В то время как вложенный массив опций создаст группы элементов options с опциями внутри них.
$options = [
1 => 'bill',
'fred' => [
2 => 'fred',
3 => 'fred jr.'
]
];
$this->Form->select('Model.field', $options); Если у вас есть несколько опций, которые должны иметь одинаковое значение атрибута value, вы можете использовать массив массивов для его выражения:
$options = [
['text' => 'United states', 'value' => 'USA'],
['text' => 'USA', 'value' => 'USA'],
]; Параметры
- строка
$fieldName - Атрибут name элемента SELECT
- массив|Перечисляемый
$optionsнеобязательно [] Массив элементов OPTION (в виде пар 'значение'=>'Текст'), которые будут использоваться в элементе SELECT.
- массив
$attributesнеобязательно [] - Атрибуты HTML элемента select.
Возвращает
строкаОтформатированный элемент SELECT
См. также
\Cake\View\Helper\FormHelper::multiCheckbox() для создания нескольких флажков.Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-select-pickerssetValueSources()source public
setValueSources( string|array $sources )
Устанавливает источники значений.
Допустимые значения: 'context', 'data' и 'query'. Вам необходимо предоставить один допустимый контекст или несколько, как список строк. Порядок устанавливает приоритет.
Параметры
- строка|массив
$sources - Строка или список строк, идентифицирующих источник.
Возвращает
$this
submit()source public
submit( string|null $caption null , array $options [] )
Создаёт элемент кнопки отправки. Данный метод сгенерирует <input /> элементы, которые могут использоваться для отправки и сброса форм, используя $options. Кнопки с изображением могут быть созданы путём предоставления пути к изображению для $caption.
Опции
-
type- Установите 'reset' для элементов сброса. По умолчанию 'submit' -
templateVars- Дополнительные переменные шаблона для элемента ввода и его контейнера. - Другие атрибуты будут присвоены элементу ввода.
Параметры
- строка|null
$captionнеобязательно null Текст метки на кнопке ИЛИ, если строка содержит :// или расширение .jpg, .jpe, .jpeg, .gif, .png, использует изображение, если расширение существует, и первая буква /, изображение относительно webroot, ИЛИ, если первая буква не /, изображение относительно webroot/img.
- массив
$optionsнеобязательно [] - Массив опций. См. выше.
Возвращает
строкаHTML элемент кнопки отправки
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-buttons-and-submit-elementstextarea()source public
textarea( string $fieldName , array $options [] )
Создаёт элемент textarea.
Опции:
-
escape- Указывает, нужно ли кодировать содержимое textarea. По умолчанию true.
Параметры
- строка
$fieldName - Имя поля в формате "наименование_модели.наименование_поля"
- массив
$optionsнеобязательно [] - Массив атрибутов HTML и специальных опций, указанных выше.
Возвращает
строкаСгенерированный HTML элемент ввода текста
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-textareastime()source public
time( string $fieldName , array $options [] )
Генерирует поля времени.
Опции:
См. dateTime() для опций времени.
Параметры
- строка
$fieldName - Префикс имени для элемента SELECT
- массив
$optionsнеобязательно [] - Массив опций
Возвращает
строкаСгенерированный набор выпадающих списков для выбранных форматов времени.
См. также
\Cake\View\Helper\FormHelper::dateTime() для опций шаблонизации.unlockField()source public
unlockField( string|null $name null )
Добавляет или получает список полей, которые в настоящее время не заблокированы. Незаблокированные поля не включены в хеш поля, используемый SecurityComponent. Разблокировка поля после добавления его в список защищённых полей удалит его из списка.
Параметры
- строка|null
$nameнеобязательно null - Имя поля с точкой.
Возвращает
массив|nullЛибо null, либо список полей.
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#working-with-securitycomponentwidget()source public
widget( string $name , array $data [] )
Отображает виджет с заданным именем.
Это метод низкого уровня. Для встроенных виджетов вы должны использовать методы, такие как text, hidden, и radio. Если вы используете дополнительные виджеты, вы должны использовать этот метод для отображения виджета без метки или обертывающего div.
Параметры
- строка
$name - Имя виджета, например, 'text'.
- массив
$dataнеобязательно [] - Данные для отображения.
Возвращает
строкаwidgetRegistry()source public
widgetRegistry( Cake\View\Widget\WidgetRegistry $instance null , array $widgets [] )
Устанавливает реестр виджетов, который будет использовать помощник.
Параметры
-
Cake\View\Widget\WidgetRegistry$instanceнеобязательно null - Экземпляр реестра, который нужно установить.
- массив
$widgetsнеобязательно [] - Массив виджетов
Возвращает
Cake\View\Widget\WidgetRegistryyear()source public
year( string $fieldName , array $options [] )
Возвращает элемент SELECT для годов
Атрибуты:
-
empty- Если true, отображается пустой элемент выпадающего списка. Если строка, эта строка отображается как пустой элемент. -
orderYear- Порядок значений года в элементах списка options. Возможные значения 'asc', 'desc'. По умолчанию 'desc' -
value- Выбранное значение ввода. -
maxYear- Максимальный год, который должен отображаться в элементе select. -
minYear- Минимальный год, который должен отображаться в элементе select.
Параметры
- строка
$fieldName - Префикс имени для элемента SELECT
- массив
$optionsнеобязательно [] - Опции и атрибуты для элементов списка options.
Возвращает
строкаЗаполненный элемент ввода select для года
Ссылка
https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-year-inputsМетоды, унаследованные от Cake\View\Helper
__debugInfo()source public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
array__get()source public
__get( string $name )
Ленично загружает хелперы.
Параметры
- string
$name - Имя свойства, к которому осуществляется доступ.
Возвращает
Cake\View\Helper|nullЭкземпляр хелпера, если хелпер с указанным именем существует
_confirm()source protected
_confirm( string $message , string $okCode , string $cancelCode '' , array $options [] )
Возвращает строку, которая будет использоваться в качестве обработчика onclick для диалогов подтверждения.
Параметры
- string
$message - Сообщение, которое будет отображено
- string
$okCode - Код, который будет выполнен после того, как пользователь выбрал 'OK'
- string
$cancelCodeнеобязательно '' - Код, который будет выполнен после того, как пользователь выбрал 'Отмена'
- array
$optionsнеобязательно [] - Массив опций
Возвращает
stringКод onclick JS
addClass()source public
addClass( array $options [] , string|null $class null , string $key 'class' )
Добавляет заданный класс к параметрам элемента.
Параметры
- array
$optionsнеобязательно [] - Массив опций/атрибутов для добавления класса
- string|null
$classнеобязательно null - Имя добавляемого класса.
- string
$keyнеобязательно 'class' - ключ для использования класса.
Возвращает
arrayМассив опций с установленным $key.
getView()source public
getView( )
Получить экземпляр представления, к которому привязан этот хелпер.
Возвращает
Cake\View\ViewЭкземпляр привязанного представления.
initialize()source public
initialize( array $config )
Метод обработки конструктора.
Реализуйте этот метод, чтобы избежать необходимости перезаписи конструктора и вызова родительского.
Параметры
- array
$config - Параметры конфигурации, предоставленные этому хелперу.
Методы, используемые из Cake\View\Helper\IdGeneratorTrait
_domId()source protected
_domId( string $value )
Создать ID, подходящий для использования в атрибуте ID.
Параметры
- string
$value - Значение для преобразования в ID.
Возвращает
stringСозданный id.
_id()source protected
_id( string $name , string $val )
Создать атрибут ID для элемента.
Обеспечивает уникальность идентификаторов для заданного набора полей.
Параметры
- string
$name - Имя атрибута ID.
- string
$val - Значение атрибута ID.
Возвращает
stringСозданный идентификатор.
Методы, используемые из Cake\View\Helper\SecureFieldTokenTrait
_buildFieldToken()source protected
_buildFieldToken( string $url , array $fields , array $unlockedFields [] )
Создать данные токена для предоставленных входных данных.
Параметры
- string
$url - URL, на который отправляется форма.
- array
$fields Если установлено, задает список полей, используемых при создании хэша.
- array
$unlockedFieldsнеобязательно [] Список полей, исключенных из проверки полей.
Возвращает
arrayДанные токена.
Методы, используемые из Cake\View\StringTemplateTrait
formatTemplate()source public
formatTemplate( string $name , array $data )
Форматирует шаблонную строку с $data
Параметры
- string
$name - Имя шаблона.
- array
$data - Данные для вставки.
Возвращает
stringgetTemplates()source public
getTemplates( string|null $template null )
Получает используемые шаблоны или определенный шаблон.
Параметры
- string|null
$templateнеобязательно null - Строка для чтения определенного шаблона, null для всех.
Возвращает
string|arraysetTemplates()source public
setTemplates( array $templates )
Устанавливает используемые шаблоны.
Параметры
- array
$templates - Шаблоны для добавления.
Возвращает
$this
templater()source public
templater( )
Возвращает экземпляр templater.
Возвращает
Cake\View\StringTemplatetemplates()source public
templates( string|null|array $templates null )
Получает/устанавливает используемые шаблоны.
Устарело
3.4.0 Используйте setTemplates()/getTemplates() вместо этого.Параметры
- string|null|array
$templatesнеобязательно null null или строка позволяют читать шаблоны. Массив позволяет добавлять шаблоны.
Возвращает
$this|string|array
Методы, используемые из Cake\Core\InstanceConfigTrait
_configDelete()source protected
_configDelete( string $key )
Удаляет один ключ конфигурации.
Параметры
- string
$key - Ключ для удаления.
Исключения
Cake\Core\Exception\Exceptionесли попытка перезаписать существующую конфигурацию
_configRead()source protected
_configRead( string|null $key )
Считывает ключ конфигурации.
Параметры
- string|null
$key - Ключ для чтения.
Возвращает
mixed_configWrite()source protected
_configWrite( string|array $key , mixed $value , boolean|string $merge false )
Записывает ключ конфигурации.
Параметры
- string|array
$key - Ключ для записи.
- mixed
$value - Значение для записи.
- boolean|string
$mergeнеобязательно false True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.
Исключения
Cake\Core\Exception\Exceptionесли попытка перезаписи существующей конфигурации
config()source public
config( string|array|null $key null , mixed|null $value null , boolean $merge true )
Получение/установка конфигурации.
Использование
Чтение всей конфигурации:
$this->config();
Чтение определенного значения:
$this->config('key'); Чтение вложенного значения:
$this->config('some.nested.key'); Установка определенного значения:
$this->config('key', $value); Установка нескольких значений конфигурации одновременно:
$this->config(['one' => 'value', 'another' => 'value']);
Устарело
3.4.0 используйте setConfig()/getConfig() вместо этого.Параметры
- string|array|null
$keyнеобязательно null - Ключ для получения/установки или массив конфигурации.
- mixed|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Выполнять рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.
Возвращает
mixedЗначение конфигурации, которое читается, или сам объект при операциях записи.
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить недействительный ключ.
configShallow()source public
configShallow( string|array $key , mixed|null $value null )
Слияние предоставленной конфигурации с существующей. В отличие от config(), которая выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.
Установка определенного значения:
$this->configShallow('key', $value); Установка вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких значений конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
- string|array
$key - Ключ для установки или полный массив конфигураций.
- mixed|null
$valueнеобязательно null - Значение для установки.
Возвращает
$this
getConfig()source public
getConfig( string|null $key null , mixed $default null )
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение определенного значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
- string|null
$keyнеобязательно null - Ключ для получения или null для всей конфигурации.
- mixed
$defaultнеобязательно null - Возвращаемое значение, когда ключ не существует.
Возвращает
mixedЗначение конфигурации, которое считывается.
setConfig()source public
setConfig( string|array $key , mixed|null $value null , boolean $merge true )
Устанавливает конфигурацию.
Использование
Установка определенного значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких значений конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
- string|array
$key - Ключ для установки или полный массив конфигураций.
- mixed|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Выполнять рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.
Возвращает
$this
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить недействительный ключ.
Краткое описание магических методов
Подробное описание свойств
$_datetimeOptionssource
protected array
Специальные параметры, используемые для дат/времени.
[
'interval', 'round', 'monthNames', 'minYear', 'maxYear',
'orderYear', 'timeFormat', 'second'
] $_datetimePartssource
protected array
Разные компоненты, составляющие выборщик даты/времени.
['year', 'month', 'day', 'hour', 'minute', 'second', 'meridian']
$_defaultConfigsource
protected array
Значения конфигурации по умолчанию для помощника.
[
'idPrefix' => null,
'errorClass' => 'form-error',
'typeMap' => [
'string' => 'text',
'text' => 'textarea',
'uuid' => 'string',
'datetime' => 'datetime',
'timestamp' => 'datetime',
'date' => 'date',
'time' => 'time',
'boolean' => 'checkbox',
'float' => 'number',
'integer' => 'number',
'tinyinteger' => 'number',
'smallinteger' => 'number',
'decimal' => 'number',
'binary' => 'file',
],
'templates' => [
'button' => '<button{{attrs}}>{{text}}</button>',
'checkbox' => '<input type="checkbox" name="{{name}}" value="{{value}}"{{attrs}}>',
'checkboxFormGroup' => '{{label}}',
'checkboxWrapper' => '<div class="checkbox">{{label}}</div>',
'dateWidget' => '{{year}}{{month}}{{day}}{{hour}}{{minute}}{{second}}{{meridian}}',
'error' => '<div class="error-message">{{content}}</div>',
'errorList' => '<ul>{{content}}</ul>',
'errorItem' => '<li>{{text}}</li>',
'file' => '<input type="file" name="{{name}}"{{attrs}}>',
'fieldset' => '<fieldset{{attrs}}>{{content}}</fieldset>',
'formStart' => '<form{{attrs}}>',
'formEnd' => '</form>',
'formGroup' => '{{label}}{{input}}',
'hiddenBlock' => '<div style="display:none;">{{content}}</div>',
'input' => '<input type="{{type}}" name="{{name}}"{{attrs}}/>',
'inputSubmit' => '<input type="{{type}}"{{attrs}}/>',
'inputContainer' => '<div class="input {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="input {{type}}{{required}} error">{{content}}{{error}}</div>',
'label' => '<label{{attrs}}>{{text}}</label>',
'nestingLabel' => '{{hidden}}<label{{attrs}}>{{input}}{{text}}</label>',
'legend' => '<legend>{{text}}</legend>',
'multicheckboxTitle' => '<legend>{{text}}</legend>',
'multicheckboxWrapper' => '<fieldset{{attrs}}>{{content}}</fieldset>',
'option' => '<option value="{{value}}"{{attrs}}>{{text}}</option>',
'optgroup' => '<optgroup label="{{label}}"{{attrs}}>{{content}}</optgroup>',
'select' => '<select name="{{name}}"{{attrs}}>{{content}}</select>',
'selectMultiple' => '<select name="{{name}}[]" multiple="multiple"{{attrs}}>{{content}}</select>',
'radio' => '<input type="radio" name="{{name}}" value="{{value}}"{{attrs}}>',
'radioWrapper' => '{{label}}',
'textarea' => '<textarea name="{{name}}"{{attrs}}>{{value}}</textarea>',
'submitContainer' => '<div class="submit">{{content}}</div>',
]
] $_defaultWidgetssource
protected array
Значения виджетов по умолчанию
[
'button' => ['Button'],
'checkbox' => ['Checkbox'],
'file' => ['File'],
'label' => ['Label'],
'nestingLabel' => ['NestingLabel'],
'multicheckbox' => ['MultiCheckbox', 'nestingLabel'],
'radio' => ['Radio', 'nestingLabel'],
'select' => ['SelectBox'],
'textarea' => ['Textarea'],
'datetime' => ['DateTime', 'select'],
'_default' => ['Basic'],
] $_lastActionsource
protected string
Значение атрибута action последней созданной формы. Используется для создания хешей, специфичных для формы/запроса, для SecurityComponent.
''
$_unlockedFieldssource
protected array
Массив имен полей, которые были исключены из хеша токенов, используемого методом validatePost SecurityComponent.
См. также
\Cake\View\Helper\FormHelper::_secure()\Cake\Controller\Component\SecurityComponent::validatePost()
[]
$_valueSourcessource
protected array
Источники, которые будут использоваться при получении предопределенных значений ввода.
['context']
$requestTypesource
public string|null
Определяет тип создаваемой формы. Устанавливается с помощью FormHelper::create().
Подробное описание магических свойств
$Htmlsource
public Cake\View\Helper\HtmlHelper
$Urlsource
public Cake\View\Helper\UrlHelper
© 2005–2017 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.4/class-Cake.View.Helper.FormHelper.html