Spec-Zone.ru › CakePHP 3.8

Класс 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
Пространство имён: Cake\View\Helper
Ссылка: https://book.cakephp.org/3.0/ru/views/helpers/form.html
Расположение: View/Helper/FormHelper.php

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

  • string

    SECURE_SKIP
    'skip'

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

  • $_context protected
    Cake\View\Form\ContextInterface|null
    Контекст текущей формы.
  • $_contextFactory protected
    Cake\View\Form\ContextFactory
    Фабрика контекста.
  • $_datetimeOptions protected
    array
    Специальные параметры, используемые для входных данных типа datetime.
  • $_datetimeParts protected
    array
    Различные пикеры, составляющие пикер datetime.
  • $_defaultConfig protected
    array
    Конфигурация по умолчанию для помощника.
  • $_defaultWidgets protected
    array
    Виджеты по умолчанию
  • $_groupedInputTypes protected
    string[]
    Группированные типы входных данных.
  • $_lastAction protected
    string

    Значение атрибута action последней созданной формы. Используется для создания хэшей, специфичных для формы/запроса, для SecurityComponent.

  • $_locator protected
    Cake\View\Widget\WidgetLocator
    Локатор для виджетов входных данных.
  • $_unlockedFields protected
    string[]

    Массив имён полей, исключённых из хэша Token, используемого методом validatePost в SecurityComponent.

  • $_valueSources protected
    string[]
    Источники, используемые при получении предварительно заполненных значений входных данных.
  • $fields public
    array
    Список созданных полей, используется с защищёнными формами.
  • $helpers public
    array
    Другие помощники, используемые FormHelper
  • $requestType public
    string|null
    Определяет тип создаваемой формы. Устанавливается методом FormHelper::create().

Краткое описание магических свойств

  • $Html public
    Cake\View\Helper\HtmlHelper
  • $Url public
    Cake\View\Helper\UrlHelper

Унаследованные свойства

  • _View, _helperMap, fieldset, tags _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

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

  • _isDisabled() protected
    Определяет, заблокировано ли поле.
  • _lastAction() protected
    Правильно сохраняет URL последнего действия формы.
  • _magicOptions() protected
    Магически устанавливает тип параметра и соответствующие параметры.
  • _optionsOptions() protected

    Выбирает переменную, содержащую параметры для поля select, если она присутствует, и устанавливает значение в ключ «options» в массиве параметров.

  • _parseOptions() protected
    Генерирует массив параметров ввода.
  • _secure() protected

    Определяет, какие поля формы должны быть использованы для хэша. Заполняет $this->fields

  • _secureFieldName() protected
    Получает имя поля для использования с _secure().
  • _singleDatetime() protected
    Вспомогательный метод для различных методов компонента single datetime.
  • addContextProvider() public
    Добавляет новый тип контекста.
  • addWidget() public
    Добавляет новый виджет в FormHelper.
  • allControls() public

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

  • allInputs() public deprecated

    Генерирует набор элементов управления для $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
    Создаёт виджет ввода файла.
  • getSourceValue() public
    Получает значение одного поля из доступных источников.
  • getValueSources() public
    Получает источники значений.
  • getWidgetLocator() public
    Получает локатор виджета, используемый в данный момент помощником.
  • hidden() public
    Создаёт скрытое поле ввода.
  • hour() public
    Возвращает элемент SELECT для часов.
  • implementedEvents() public
    Обработчики событий.
  • input() public deprecated
    Генерирует элемент управления формой, включая метку и обертывающую div.
  • inputs() public deprecated
    Генерирует набор элементов управления для $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.
END_OF_DOCUMENT_MARKER
  • postLink() public

    Создаёт HTML ссылку, но доступ к URL осуществляется с помощью указанного метода (по умолчанию POST). Требуется, чтобы JavaScript был включён в браузере.

  • radio() public
    Создаёт набор элементов радиокнопок.
  • resetTemplates() public
    Восстанавливает значения по умолчанию, встроенные в FormHelper.
  • secure() public

    Генерирует скрытое поле с хэшем безопасности, основанным на полях, используемых в форме.

  • select() public
    Возвращает отформатированный элемент SELECT.
  • setValueSources() public
    Устанавливает источники значений.
  • setWidgetLocator() public
    Устанавливает локатор виджетов, который будет использовать помощник.
  • submit() public

    Создаёт элемент кнопки отправки. Этот метод сгенерирует элементы <input />, которые можно использовать для отправки и сброса форм, используя $options. Кнопки-изображения можно создать, указав путь к изображению в $caption.

  • textarea() public
    Создаёт виджет текстового поля.
  • time() public
    Генерирует поля ввода времени.
  • unlockField() public

    Добавить или получить список полей, которые в настоящее время разблокированы. Разблокированные поля не включаются в хэш поля, используемый SecurityComponent. Разблокирование поля после того, как оно было добавлено в список защищённых полей, удалит его из списка полей.

  • widget() public
    Отобразить виджет с заданным именем.
  • widgetRegistry() public deprecated
    Установить реестр виджетов, который будет использовать помощник.
  • 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
Список параметров.

Возвращает

логическое значение/строка
false или сгенерированный элемент метки

_groupTemplate()source protected

_groupTemplate( array $options )

Генерирует элемент шаблона группы

Параметры

массив $options
Параметры для шаблона группы

Возвращает

строка
Сгенерированный шаблон группы

_initInputField()source protected

_initInputField( string $field , array $options = [] )

Устанавливает значения по умолчанию для поля и добавляет поле в хэш безопасности формы. Также добавит класс ошибки, если поле содержит ошибки валидации.

Параметры

  • secure - логическое значение, определяющее, должно ли поле добавляться в поля безопасности. Отключение поля с помощью параметра disabled, также исключит поле из хэшированного ключа.
  • default - смешанный - Значение, которое нужно использовать, если значение отсутствует в контексте формы.
  • disabled - смешанный - Либо логическое значение, указывающее состояние отключения, либо строка в численно индексированном значении.
  • 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[поле], возвращается массив имен частей поля, например ['Model', 'поле'].

Параметры

строка $name
Атрибут name элементов формы.

Возвращает

массив

Массив параметров имени поля, например ['Model.поле'] или ['Model', 'поле'] для полей массива, или пустой массив, если $name пуст.


_singleDatetime()source protected

_singleDatetime( array $options , string $keep )

Вспомогательный метод для различных методов компонентов single datetime.

Параметры

массив $options
Массив опций.
строка $keep
Опция, которую не нужно отключать.

Возвращает

массив

addContextProvider()source public

addContextProvider( string $type , callable $check )

Добавление нового типа контекста.

Типы контекста формы позволяют 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, чтобы отключить поле. Также можно передать массив параметров, которые будут применены в качестве атрибутов HTML к тегу fieldset. Если передать пустой массив, fieldset будет включен - legend Установите в false, чтобы отключить легенду сгенерированного набора элементов управления. Или укажите строку, чтобы настроить текст легенды.

Возвращает

строка
Завершенные элементы управления формы.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-forms

allInputs()source public deprecated

allInputs( array $fields = [] , array $options = [] )

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

Устарело

3.4.0 Используйте FormHelper::allControls() вместо этого.

Параметры

массив $fields необязательно []

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

массив $options необязательно []

Массив опций. Допустимые ключи: - fieldset Установите в false, чтобы отключить поле fieldset. Также можно передать массив параметров, которые будут применены в качестве атрибутов тега fieldset. Если вы передадите пустой массив, fieldset будет включен - legend Установите в false, чтобы отключить легенду для сгенерированного набора элементов управления. Либо передайте строку, чтобы настроить текст легенды.

Возвращает

строка
Завершенные элементы управления формы.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-forms

button()source public

button( string $title , array $options = [] )

Создаёт тег <button>.

Атрибут type по умолчанию равен type="submit". Вы можете изменить его на другое значение, используя $options['type'].

Опции:

  • escape - кодировать HTML-сущности $title кнопки. По умолчанию false.
  • confirm - сообщение подтверждения для показа. Выполнение формы продолжится только после подтверждения.

Параметры

строка $title
Подпись кнопки. Не кодируется автоматически в HTML.
массив $options необязательно []
Массив опций и атрибутов HTML.

Возвращает

строка
Тег HTML кнопки.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-button-elements

checkbox()source public

checkbox( string $fieldName , array $options = [] )

Создаёт элемент ввода типа checkbox.

Опции:

  • value - значение checkbox
  • checked - булево значение, указывающее, что этот checkbox отмечен.
  • hiddenField - булево значение, указывающее, нужно ли включать скрытый элемент ввода со значением ''.
  • disabled - создать отключённый элемент ввода.
  • default - установить значение по умолчанию для checkbox. Это позволяет устанавливать checkbox по умолчанию, без необходимости проверки данных POST. Соответствующее значение POST перезапишет значение по умолчанию.

Параметры

строка $fieldName
Имя поля, например "modelname.fieldname"
массив $options необязательно []
Массив атрибутов HTML.

Возвращает

строка|массив
Элемент HTML текстового поля ввода.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-checkboxes

context()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\ContextFactory

control()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 для отключения метки вокруг вложенных виджетов, например, radio, multicheckbox, или массив атрибутов для тега метки. selected будет добавлен ко всем классам, например, class => 'myclass' где widget проверен

Параметры

строка $fieldName
Должно быть "modelname.fieldname"
массив $options необязательно []
Каждый тип ввода принимает разные опции.

Возвращает

строка
Завершенный виджет формы.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-form-inputs

controls()source public

controls( array $fields , array $options = [] )

Генерирует набор элементов управления для $fields в элементе fieldset.

Вы можете настроить отдельные элементы управления через $fields.

$this->Form->controls([
  'name' => ['label' => 'custom label'],
  'email'
]);

Параметры

массив $fields

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

массив $options необязательно []

Массив опций. Допустимые ключи: - fieldset Установите в false, чтобы отключить fieldset. Также можно передать массив параметров, которые будут применены в качестве атрибутов тега fieldset. Если передать пустой массив, fieldset будет включен. - legend Установите в false, чтобы отключить легенду для сгенерированного набора элементов. Либо передайте строку, чтобы настроить текст легенды.

Возвращает

строка
Завершенные элементы ввода формы.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-forms

create()source public

create( mixed $context = null , array $options = [] )

Возвращает элемент HTML-формы.

Параметры:

  • type Метод формы по умолчанию определяется автоматически на основе контекста формы. Если метод isCreate() контекста формы возвращает false, будет выполнен PUT-запрос.
  • method Явно задать атрибут method формы.
  • action Действие контроллера, к которому отправляется форма (необязательно). Используйте этот параметр, если вам не нужно менять контроллер по сравнению с текущим контроллером запроса. Устарело начиная с версии 3.2, используйте url.
  • url URL, к которому отправляется форма. Может быть строкой или массивом 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::create

date()source public

date( string $fieldName , array $options = [] )

Генерация ввода даты.

Параметры:

См. dateTime() для параметров даты.

Параметры

строка $fieldName
Префикс имени для элемента SELECT
массив $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}}

Параметры

строка $fieldName
Префикс имени для элемента SELECT
массив $options необязательно []
Массив параметров

Возвращает

строка
Сгенерированный набор выпадающих списков для выбранных форматов даты и времени.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-date-and-time-inputs

day()source public

day( string|null $fieldName = null , array $options = [] )

Возвращает элемент SELECT для дней.

Параметры:

  • empty - Если true, пустой элемент выбора отображается. Если строка, то эта строка отображается как пустой элемент.
  • value Выбранное значение ввода.

Параметры

строка|null $fieldName необязательно null
Префикс имени для элемента SELECT
массив $options необязательно []
Параметры и атрибуты HTML для элемента select

Возвращает

строка
Сгенерированный выпадающий список дней.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-day-inputs

end()source public

end( array $secureAttributes = [] )

Закрывает HTML-форму, очищает значения, установленные FormHelper::create(), и записывает скрытые поля ввода, если это необходимо.

Сбрасывает некоторые части состояния, общие для нескольких вызовов FormHelper::create(), по умолчанию.

Параметры

массив $secureAttributes необязательно []

Безопасные атрибуты, которые будут переданы в виде атрибутов HTML в скрытые элементы ввода, сгенерированные для компонента Security.

Возвращает

строка
Закрывающий тег FORM.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#closing-the-form

error()source public

error( string $field , string|array|null $text = null , array $options = [] )

Возвращает отформатированное сообщение об ошибке для заданного поля формы, '' если ошибок нет.

Использует шаблоны error, errorList и errorItem. Шаблоны errorList и errorItem используются для форматирования нескольких сообщений об ошибках на поле.

Параметры:

  • escape boolean - Определяет, нужно ли экранировать содержимое ошибки.

Параметры

строка $field
Имя поля, например, "modelname.fieldname"
строка|массив|null $text необязательно null

Сообщение об ошибке в виде строки или массива сообщений. Если массив, он должен быть хешем имен ключей => сообщений.

массив $options необязательно []
См. выше.

Возвращает

строка
Отформатированные ошибки или ''.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#displaying-and-checking-errors

fieldset()source public

fieldset( string $fields = '' , array $options = [] )

Оборачивает набор вводов в поле fieldset

Параметры

строка $fields необязательно ''
вводы формы для обёртки в поле fieldset
массив $options необязательно []

Массив параметров. Допустимые ключи: - fieldset Установите в false, чтобы отключить fieldset. Вы также можете передать массив параметров, которые будут применены как атрибуты HTML к тегу fieldset. Если вы передадите пустой массив, fieldset будет включен - legend Установите в false, чтобы отключить легенду для сгенерированного набора ввода. Или передайте строку для настройки текста легенды.

Возвращает

строка
Завершенные вводы формы.

file()source public

file( string $fieldName , array $options = [] )

Создаёт элемент ввода файла.

Параметры

строка $fieldName
Имя поля в формате "modelname.fieldname"
массив $options необязательно []
Массив атрибутов HTML.

Возвращает

строка
Сгенерированный элемент ввода файла.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-file-inputs

getSourceValue()source public

getSourceValue( string $fieldname , array|null $options = [] )

Получает значение одного поля из доступных источников.

Параметры

string $fieldname
Имя поля для получения значения.
array|null $options необязательно []
Опции, содержащие значения по умолчанию.

Возвращает

string|null
Значение поля, полученное из источников или по умолчанию.

getValueSources()source public

getValueSources( )

Получает источники значений.

Возвращает список, но как минимум один элемент, допустимых источников, таких как: 'context', 'data' и 'query'.

Возвращает

string[]
Список источников значений.

getWidgetLocator()source public

getWidgetLocator( )

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

Возвращает

Cake\View\Widget\WidgetLocator
Текущая инстанция локатора

С тех пор

3.6.0

hidden()source public

hidden( string $fieldName , array $options = [] )

Создает скрытое поле ввода.

Параметры

string $fieldName
Имя поля в формате "имя_модели.имя_поля"
array $options необязательно []
Массив атрибутов HTML.

Возвращает

string
Сгенерированное скрытое поле ввода

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-hidden-inputs

hour()source public

hour( string $fieldName , array $options = [] )

Возвращает элемент SELECT для часов.

Атрибуты:

  • empty - Если true, то пустой вариант выбора отображается. Если строка, то эта строка отображается как пустой элемент.
  • value Выбранное значение элемента ввода.
  • format Установите в 12 или 24 для использования 12-часового или 24-часового формата. По умолчанию 24.

Параметры

string $fieldName
Префиксное имя для элемента SELECT
array $options необязательно []
Список атрибутов HTML

Возвращает

string
Заполненный элемент выбора часов

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-hour-inputs

implementedEvents()source public

implementedEvents( )

Обработчики событий.

Возвращает

array

Переопределяет

Cake\View\Helper::implementedEvents()

input()source public deprecated

input( string $fieldName , array $options = [] )

Генерирует элемент управления формой, включая метку и обертывающую div.

Устарело

3.4.0 Используйте FormHelper::control() вместо этого.

Параметры

string $fieldName
Должно быть "имя_модели.имя_поля"
array $options необязательно []
Каждый тип ввода принимает разные опции.

Возвращает

string
Заполненный виджет формы.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-form-inputs

inputs()source public deprecated

inputs( array $fields , array $options = [] )

Генерирует набор элементов управления для $fields , заключенных в элемент fieldset.

Устарело

3.4.0 Используйте FormHelper::controls() вместо этого.

Параметры

array $fields

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

array $options необязательно []

Массив опций. Допустимые ключи: - fieldset Установите в false, чтобы отключить fieldset. Также можно передать массив параметров, которые будут применены как атрибуты тега fieldset. Если вы передадите пустой массив, fieldset будет включен. - legend Установите в false, чтобы отключить легенду для сгенерированного набора ввода. Или укажите строку, чтобы настроить текст легенды.

Возвращает

string
Заполненные поля формы.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#generating-entire-forms

isFieldError()source public

isFieldError( string $field )

Возвращает true, если для данного поля есть ошибка, иначе false

Параметры

string $field
Должно быть "имя_модели.имя_поля"

Возвращает

boolean
Если есть ошибки, этот метод возвращает true, иначе false.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#displaying-and-checking-errors

label()source public

label( string $fieldName , string|null $text = null , array $options = [] )

Возвращает отформатированный элемент LABEL для HTML-форм.

Автоматически сгенерирует атрибут for , если он не задан.

Опции

  • for - Установите атрибут for, если он не определен, атрибут for будет сгенерирован из параметра $fieldName с помощью FormHelper::_domId().
  • escape - Установите в false , чтобы отключить экранирование текста метки. По умолчанию true.

Примеры:

Текст и атрибут 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>

Вложение тега input:

echo $this->Form->label('published', 'Publish', [
  'for' => 'published',
  'input' => $this->text('published'),
]);
<label for="post-publish">Publish <input type="text" name="published"></label>

Если вы хотите вложить input в метки, вам нужно изменить шаблоны по умолчанию.

Параметры

string $fieldName
Должно быть "имя_модели.имя_поля"
string|null $text необязательно null

Текст, который будет отображаться в поле метки. Если $text не определен, текст будет извлечен из fieldName.

array $options необязательно []
Массив атрибутов HTML.

Возвращает

string
Отформатированный элемент LABEL

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-labels

meridian()source public

meridian( string $fieldName , array $options = [] )

Возвращает элемент SELECT для AM или PM.

Атрибуты:

  • empty - Если true, то пустой вариант выбора отображается. Если строка, то эта строка отображается как пустой элемент.
  • value Выбранное значение элемента ввода.

Параметры

string $fieldName
Префиксное имя для элемента SELECT
array $options необязательно []
Массив опций

Возвращает

string
Заполненный элемент выбора AM или PM

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-meridian-inputs

minute()source public

minute( string $fieldName , array $options = [] )

Возвращает элемент SELECT для минут.

Атрибуты:

  • empty - Если true, то пустой вариант выбора отображается. Если строка, то эта строка отображается как пустой элемент.
  • value Выбранное значение элемента ввода.
  • interval Интервал, с которым создаются варианты минут.
  • round Как вы хотите округлять значение, если оно не попадает точно в интервал. Принимает 'up', 'down' и null.

Параметры

string $fieldName
Префиксное имя для элемента SELECT
array $options необязательно []
Массив опций.

Возвращает

string
Заполненный элемент выбора минут.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-minute-inputs
END_OF_DOCUMENT_MARKER

month()source public

month( string $fieldName , array $options = [] )

Возвращает элемент SELECT для месяцев.

Параметры:

  • monthNames — Если false, будут использоваться двузначные числа вместо текста. Если массив, будет использован данный массив.
  • empty — Если true, отображается пустой элемент выбора. Если строка, эта строка отображается как пустой элемент.
  • value — Выбранное значение поля ввода.

Параметры

строка $fieldName
Префиксное имя для элемента SELECT
массив $options необязательно []
Атрибуты для элемента select

Возвращаемое значение

строка
Сгенерированный выпадающий список выбора месяца.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-month-inputs

multiCheckbox()source public

multiCheckbox( string $fieldName , array|Traversable $options , array $attributes = [] )

Создает набор флажков из вариантов.

Параметры

  • escape — Если true, содержимое вариантов будет закодировано в HTML-сущности. По умолчанию true.
  • val — Выбранное значение поля ввода.
  • class — При использовании множественного выбора флажков имя класса, применяемого к div. По умолчанию 'checkbox'.
  • disabled — Управление атрибутом disabled. При создании флажков, true отключит все флажки. Также можно задать список значений, которые нужно отключить при создании флажков.
  • hiddenField — Установите в false, чтобы удалить скрытое поле, гарантирующее, что значение всегда отправляется.
  • label — Либо false для отключения метки вокруг виджета, либо массив атрибутов для тега метки. selected будет добавлен к любым классам, например, 'class' => 'myclass' там, где виджет отмечен

Может использоваться вместо выпадающего списка с атрибутом multiple.

Параметры

строка $fieldName
Атрибут name элемента 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.
  • confirm — Сообщение подтверждения для отображения. Выполнение формы будет продолжено только после подтверждения.

Параметры

строка $title
Текст кнопки. Не кодируется автоматически в HTML
строка|массив $url
URL в виде строки или массива
массив $options необязательно []
Массив параметров и атрибутов HTML.

Возвращаемое значение

Строка
Тег HTML-кнопки.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-standalone-buttons-and-post-links

postLink()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

Cake-относительный URL или массив параметров URL, или внешний URL (начинается с http://)

массив $options необязательно []
Массив атрибутов HTML.

Возвращаемое значение

Элемент

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-standalone-buttons-and-post-links

radio()source public

radio( string $fieldName , array|Traversable $options = [] , array $attributes = [] )

Создает набор радио-виджетов.

Атрибуты:

  • value — Указывает значение, когда этот радио-кнопка выбрана.
  • label — Либо false для отключения метки вокруг виджета, либо массив атрибутов для тега метки. selected будет добавлен к любым классам, например, 'class' => 'myclass' там, где виджет отмечен.
  • hiddenField — Булево значение, указывающее, нужно ли включать скрытый элемент ввода со значением «». Это полезно для создания наборов радио-кнопок, которые не являются непрерывными.
  • disabled — Установите в true или disabled для отключения всех радио-кнопок. Используйте массив значений для отключения определённых радио-кнопок.
  • empty — Установите в true, чтобы создать элемент ввода со значением '' как первый вариант. Когда true, метка радио будет «пустой». Установите этот параметр в строку, чтобы контролировать значение метки.

Параметры

строка $fieldName
Имя поля, например «modelname.fieldname»
массив|Перечисляемый $options необязательно []
Массив параметров радио-кнопок.
массив $attributes необязательно []
Массив атрибутов.

Возвращаемое значение

Строка
Полный набор радио-виджетов.

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-radio-buttons

resetTemplates()source public

resetTemplates( )

Восстанавливает значения по умолчанию, встроенные в FormHelper.

Этот метод не будет сбрасывать шаблоны, заданные в пользовательских виджетах.

secure()source public

secure( array $fields = [] , array $secureAttributes = [] )

Генерирует скрытое поле с хешем безопасности на основе полей, используемых в форме.

Если $secureAttributes задано, эти атрибуты HTML будут объединены с скрытыми тегами ввода, сгенерированными для компонента Security. Это особенно полезно для задания атрибутов HTML5, таких как 'form'.

Параметры

массив $fields необязательно []

Если задано, указывает список полей, используемых при генерации хеша, в противном случае используется $this->fields.

массив $secureAttributes необязательно []

будет передан как атрибуты HTML в скрытые элементы ввода, сгенерированные для компонента Security.

Возвращаемое значение

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


END_OF_DOCUMENT_MARKER

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 = [
 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
Атрибут имени 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-pickers

setValueSources()source public

setValueSources( string|string[] $sources )

Устанавливает источники значений.

Допустимые значения 'context', 'data' и 'query'. Вам нужно предоставить один допустимый контекст или несколько, как список строк. Порядок устанавливает приоритет.

Параметры

строка|массив строк $sources
Строка или список строк, определяющих источник.

Возвращает


$this

setWidgetLocator()source public

setWidgetLocator( Cake\View\Widget\WidgetLocator $instance )

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

Параметры

Cake\View\Widget\WidgetLocator $instance
Экземпляр локатора для установки.

Возвращает


$this

С версии

3.6.0

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-elements

textarea()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-textareas

time()source public

time( string $fieldName , array $options = [] )

Генерирует поля времени.

Опции:

См. dateTime() для опций времени.

Параметры

строка $fieldName
Префикс имени для элемента SELECT
массив $options необязательно []
Массив опций

Возвращает

строка
Сгенерированный набор списков select для форматов времени, выбранных.

См. также

\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-securitycomponent

widget()source public

widget( string $name , array $data = [] )

Отобразить виджет с указанным именем.

Это метод более низкого уровня. Для встроенных виджетов следует использовать методы, такие как text, hidden, и radio. Если вы используете дополнительные виджеты, вы должны использовать этот метод, чтобы отобразить виджет без метки или обертывающего div.

Параметры

строка $name
Имя виджета, например 'text'.
массив $data необязательно []
Данные для отображения.

Возвращает

строка

widgetRegistry()source public deprecated

widgetRegistry( Cake\View\Widget\WidgetRegistry $instance = null , array $widgets = [] )

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

Устаревший

3.6.0 Используйте FormHelper::widgetLocator() вместо этого.

Параметры

Cake\View\Widget\WidgetRegistry $instance необязательно null
Экземпляр реестра для установки.
массив $widgets необязательно []
Массив виджетов

Возвращает

Cake\View\Widget\WidgetRegistry

year()source public

year( string $fieldName , array $options = [] )

Возвращает элемент SELECT для годов

Атрибуты:

  • empty - Если true, отображается пустой элемент списка. Если строка, эта строка отображается как пустой элемент.
  • orderYear - Порядок значений года в элементах списка select. Возможные значения 'asc', 'desc'. По умолчанию 'desc'
  • value Выбранное значение входного элемента.
  • maxYear Максимальный год, который должен отображаться в элементе списка.
  • minYear Минимальный год, который должен отображаться в элементе списка.

Параметры

строка $fieldName
Префикс имени для элемента SELECT
массив $options необязательно []
Опции и атрибуты для элементов select.

Возвращает

строка
Заполненный элемент select для ввода года

Ссылка

https://book.cakephp.org/3.0/ru/views/helpers/form.html#creating-year-inputs

Методы, унаследованные от Cake\View\Helper

__debugInfo()source public

__debugInfo( )

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

Возвращает

массив
END_OF_DOCUMENT_MARKER

__get()source public

__get( string $name )

Ленито загружает помощники.

Параметры

строка $name
Имя свойства, к которому осуществляется доступ.

Возвращает

Cake\View\Helper|null
Экземпляр помощника, если помощник с указанным именем существует

__set()source public

__set( string $name , mixed $value )

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

Параметры

строка $name
Имя свойства.
смешанное $value
Значение для установки.

_cleanConfirmMessage()source protected

_cleanConfirmMessage( string $message )

Возвращает строку, готовую для использования в confirm()

Параметры

строка $message
Сообщение для очистки

Возвращает

смешанное

_confirm()source protected

_confirm( string $message , string $okCode , string $cancelCode = '' , array $options = [] )

Возвращает строку, которая будет использована в качестве обработчика onclick для диалоговых окон confirm.

Параметры

строка $message
Сообщение для отображения
строка $okCode
Код, который будет выполнен после выбора пользователем 'OK'
строка $cancelCode необязательно ''
Код, который будет выполнен после выбора пользователем 'Отмена'
массив $options необязательно []
Массив опций

Возвращает

строка
JS-код onclick

addClass()source public

addClass( array $options = [] , string|null $class = null , string $key = 'class' )

Добавляет заданный класс к параметрам элемента.

Параметры

массив $options необязательно []
Массив опций/атрибутов для добавления класса
строка|null $class необязательно null
Имя добавляемого класса.
строка $key необязательно 'class'
ключ для использования класса.

Возвращает

массив
Массив опций со значением $key.

getView()source public

getView( )

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

Возвращает

Cake\View\View
Экземпляр привязанного представления.

initialize()source public

initialize( array $config )

Метод обработчика конструктора.

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

Параметры

массив $config
Настройки конфигурации, предоставленные этому помощнику.

Методы, используемые из Cake\View\Helper\IdGeneratorTrait

_clearIds()source protected

_clearIds( )

Очистить сохранённые суффиксы ID.

_domId()source protected

_domId( string $value )

Сгенерировать ID, подходящий для использования в атрибуте ID.

Параметры

строка $value
Значение, которое нужно преобразовать в ID.

Возвращает

строка
Сгенерированный id.

_id()source protected

_id( string $name , string $val )

Сгенерировать атрибут id для элемента.

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

Параметры

строка $name
Имя атрибута ID.
строка $val
Значение атрибута ID.

Возвращает

строка
Сгенерированный id.

_idSuffix()source protected

_idSuffix( string $val )

Сгенерировать суффикс ID.

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

Параметры

строка $val
Значение атрибута ID.

Возвращает

строка
Сгенерированный суффикс ID.

Методы, используемые из Cake\View\Helper\SecureFieldTokenTrait

_buildFieldToken()source protected

_buildFieldToken( string $url , array $fields , array $unlockedFields = [] )

Сгенерировать данные токена для предоставленных входных данных.

Параметры

строка $url
URL, на который отправляется форма.
массив $fields

Если установлено, указывает список полей, используемых при генерации хэша.

массив $unlockedFields необязательно []

Список полей, исключённых из проверки полей.

Возвращает

массив
Данные токена.

Методы, используемые из Cake\View\StringTemplateTrait

formatTemplate()source public

formatTemplate( string $name , array $data )

Форматирует шаблонную строку с помощью $data

Параметры

строка $name
Имя шаблона.
массив $data
Данные для вставки.

Возвращает

строка

getTemplates()source public

getTemplates( string|null $template = null )

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

Параметры

строка|null $template необязательно null
Строка для чтения определённого шаблона, null для всех.

Возвращает

строка|массив

setTemplates()source public

setTemplates( array $templates )

Устанавливает используемые шаблоны.

Параметры

массив $templates
Шаблоны для добавления.

Возвращает


$this

templater()source public

templater( )

Возвращает экземпляр templater.

Возвращает

Cake\View\StringTemplate

templates()source public deprecated

templates( string|null|array $templates = null )

Получение/установка используемых шаблонов.

Устаревшее

3.4.0 Используйте setTemplates()/getTemplates() вместо этого.

Параметры

строка|null|массив $templates необязательно null

null или строка позволяют чтение шаблонов. Массив позволяет добавлять шаблоны.

Возвращает


$this|строка|массив

Методы, используемые из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Удаляет единственный ключ конфигурации.

Параметры

строка $key
Ключ для удаления.

Выбрасывает

Cake\Core\Exception\Exception
если пытаетесь переопределить существующую конфигурацию

_configRead()source protected

_configRead( string|null $key )

Читает ключ конфигурации.

Параметры

строка|null $key
Ключ для чтения.

Возвращает

смешанное
END_OF_DOCUMENT_MARKER

_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('some.nested.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
Данные конфигурации по указанному ключу или null, если ключ не существует.

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
При попытке установить некорректный ключ.

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

email()source public

email( $fieldName , array $options = )

Параметры

$fieldName
array $options опционально

Возвращает

string

number()source public

number( $fieldName , array $options = )

Параметры

$fieldName
array $options опционально

Возвращает

string

password()source public

password( $fieldName , array $options = )

Параметры

$fieldName
array $options опционально

Возвращает

string

search()source public

search( $fieldName , array $options = )

Параметры

$fieldName
array $options опционально

Возвращает

string

text()source public

text( $fieldName , array $options = )

Параметры

$fieldName
array $options опционально

Возвращает

string

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

$_contextsource

protected Cake\View\Form\ContextInterface|null

Контекст текущей формы.

$_contextFactorysource

protected Cake\View\Form\ContextFactory

Фабрика контекста.

$_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' => [
        // Used for button elements in button().
        'button' => '<button{{attrs}}>{{text}}</button>',
        // Used for checkboxes in checkbox() and multiCheckbox().
        'checkbox' => '<input type="checkbox" name="{{name}}" value="{{value}}"{{attrs}}>',
        // Input group wrapper for checkboxes created via control().
        'checkboxFormGroup' => '{{label}}',
        // Wrapper container for checkboxes.
        'checkboxWrapper' => '<div class="checkbox">{{label}}</div>',
        // Widget ordering for date/time/datetime pickers.
        'dateWidget' => '{{year}}{{month}}{{day}}{{hour}}{{minute}}{{second}}{{meridian}}',
        // Error message wrapper elements.
        'error' => '<div class="error-message">{{content}}</div>',
        // Container for error items.
        'errorList' => '<ul>{{content}}</ul>',
        // Error item wrapper.
        'errorItem' => '<li>{{text}}</li>',
        // File input used by file().
        'file' => '<input type="file" name="{{name}}"{{attrs}}>',
        // Fieldset element used by allControls().
        'fieldset' => '<fieldset{{attrs}}>{{content}}</fieldset>',
        // Open tag used by create().
        'formStart' => '<form{{attrs}}>',
        // Close tag used by end().
        'formEnd' => '</form>',
        // General grouping container for control(). Defines input/label ordering.
        'formGroup' => '{{label}}{{input}}',
        // Wrapper content used to hide other content.
        'hiddenBlock' => '<div style="display:none;">{{content}}</div>',
        // Generic input element.
        'input' => '<input type="{{type}}" name="{{name}}"{{attrs}}/>',
        // Submit input element.
        'inputSubmit' => '<input type="{{type}}"{{attrs}}/>',
        // Container element used by control().
        'inputContainer' => '<div class="input {{type}}{{required}}">{{content}}</div>',
        // Container element used by control() when a field has an error.
        'inputContainerError' => '<div class="input {{type}}{{required}} error">{{content}}{{error}}</div>',
        // Label element when inputs are not nested inside the label.
        'label' => '<label{{attrs}}>{{text}}</label>',
        // Label element used for radio and multi-checkbox inputs.
        'nestingLabel' => '{{hidden}}<label{{attrs}}>{{input}}{{text}}</label>',
        // Legends created by allControls()
        'legend' => '<legend>{{text}}</legend>',
        // Multi-Checkbox input set title element.
        'multicheckboxTitle' => '<legend>{{text}}</legend>',
        // Multi-Checkbox wrapping container.
        'multicheckboxWrapper' => '<fieldset{{attrs}}>{{content}}</fieldset>',
        // Option element used in select pickers.
        'option' => '<option value="{{value}}"{{attrs}}>{{text}}</option>',
        // Option group element used in select pickers.
        'optgroup' => '<optgroup label="{{label}}"{{attrs}}>{{content}}</optgroup>',
        // Select element,
        'select' => '<select name="{{name}}"{{attrs}}>{{content}}</select>',
        // Multi-select element,
        'selectMultiple' => '<select name="{{name}}[]" multiple="multiple"{{attrs}}>{{content}}</select>',
        // Radio input element,
        'radio' => '<input type="radio" name="{{name}}" value="{{value}}"{{attrs}}>',
        // Wrapping container for radio input/label,
        'radioWrapper' => '{{label}}',
        // Textarea input element,
        'textarea' => '<textarea name="{{name}}"{{attrs}}>{{value}}</textarea>',
        // Container for submit buttons.
        'submitContainer' => '<div class="submit">{{content}}</div>',
        //Confirm javascript template for postLink()
        'confirmJs' => '{{confirm}}',
    ],
    // set HTML5 validation message to custom required/empty messages
    'autoSetCustomValidity' => false,
]

$_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'],
]

$_groupedInputTypessource

protected string[]

Типы групповых входов.

['radio', 'multicheckbox', 'date', 'time', 'datetime']

$_lastActionsource

protected string

Значение атрибута action последней созданной формы. Используется для создания хэшей, специфичных для формы/запроса, для SecurityComponent.

''

$_locatorsource

protected Cake\View\Widget\WidgetLocator

Локатор для виджетов ввода.

END_OF_DOCUMENT_MARKER

$_unlockedFieldssource

protected string[]

Массив имён полей, исключённых из хэша Token, используемого методом SecurityComponent's validatePost

См. также

\Cake\View\Helper\FormHelper::_secure()
\Cake\Controller\Component\SecurityComponent::validatePost()
[]

$_valueSourcessource

protected string[]

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

['context']

$fieldssource

public array

Список созданных полей, используемых с защищёнными формами.

[]

$helperssource

public array

Другие помогающие классы, используемые FormHelper

['Url', 'Html']

$requestTypesource

public string|null

Определяет тип создаваемой формы. Устанавливается методом FormHelper::create().

Подробное описание магических свойств

$Htmlsource

public Cake\View\Helper\HtmlHelper

$Urlsource

public Cake\View\Helper\UrlHelper

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.8/class-Cake.View.Helper.FormHelper.html

Spec-Zone.ru

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