Spec-Zone.ru › CakePHP 3.5

Класс FormHelper

Библиотека помощника для форм.

Автоматическое создание HTML-форм на основе заданных данных.

Cake\View\Helper реализует Cake\Event\EventListenerInterface использует Cake\Core\InstanceConfigTrait
Extended by 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
    Специальные параметры, используемые для дат и времени.
  • $_datetimeParts protected
    array
    Различные элементы выбора, составляющие элемент выбора даты и времени.
  • $_defaultConfig protected
    array
    Настройка по умолчанию для помощника.
  • $_defaultWidgets protected
    array
    Виджеты по умолчанию
  • $_lastAction protected
    string

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

  • $_registry protected
    Cake\View\Widget\WidgetRegistry
    Регистр для виджетов ввода.
  • $_unlockedFields protected
    array

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

  • $_valueSources protected
    array
    Источники, используемые при получении заполненных значений ввода.
  • $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, 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 - mixed - значение, используемое, если в контексте формы нет значения.
  • disabled - mixed - либо boolean, указывающий состояние отключения, либо строка в числовом индексированном значении.
  • id - mixed - если 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 )

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

Параметры

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

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

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

Ссылка

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

allInputs()source public

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 - логическое значение, указывает, хотите ли вы, чтобы результаты checkbox() включали скрытый элемент управления со значением ''.
  • disabled - создать отключенный элемент управления.
  • default - Установите значение по умолчанию для 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 для сгенерированного input.

  • type - Принудительно установить тип виджета, например type => 'select'
  • label - Либо строковая метка, либо массив опций для метки. См. FormHelper::label().
  • options - Для виджетов, которые принимают опции (например, радио, select).
  • error - Управление сообщением об ошибке. Установите в false чтобы отключить любой вид отчетов об ошибках (ошибка поля и сообщения об ошибках).
  • empty - Строка или логическое значение для включения пустых опций выпадающего списка.
  • nestedInput - Используется с чекбоксами и радиокнопками. Установите в false, чтобы отобразить элементы управления вне тегов
  • templates - Шаблоны, которые вы хотите использовать для этого элемента управления. Любые шаблоны будут объединены поверх уже загруженных шаблонов. Этот параметр может быть либо именем файла в /config, содержащим шаблоны, которые вы хотите загрузить, либо массивом шаблонов для использования.
  • labelOptions - Либо false чтобы отключить метку вокруг вложенных виджетов (например, радио, multicheckbox) или массив атрибутов для тега

Параметры

строка $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 Явно задайте атрибут метода формы.
  • 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
Имя поля в формате "имя_модели.имя_поля"
массив $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 [] )

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

Параметры

строка $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-inputs

hour()source public

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

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

Атрибуты:

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

Параметры

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

Возвращает

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

Ссылка

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

implementedEvents()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-inputs

inputs()source public

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

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

Устарело

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

Параметры

массив $fields

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

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

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

Возвращает

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

Ссылка

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

isFieldError()source public

isFieldError( string $field )

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

Параметры

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

Возвращает

булево
Если есть ошибки, этот метод возвращает 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().

Примеры:

Текст и атрибут 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 в метки, вам нужно будет изменить шаблоны по умолчанию.

Параметры

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

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

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

Возвращает

строка
Отформатированный элемент 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, пустая опция select отображается. Если строка, то эта строка отображается как пустой элемент.
  • value Выбранное значение ввода.

Параметры

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

Возвращает

строка
Заполненный элемент select для 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, пустой элемент select отображается. Если строка, эта строка отображается как пустой элемент.
  • value Выбранное значение ввода.
  • interval Интервал, с которым должны создаваться опции минут.
  • round Как вы хотите округлять значение, когда оно не подходит к интервалу. Принимает 'up', 'down' и null.

Параметры

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

Возвращает

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

Ссылка

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

month()source public

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

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

Опции:

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

Параметры

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

Возвращает

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

Ссылка

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 - При использовании multiple = checkbox имя класса, которое нужно применить к div. По умолчанию 'checkbox'.
  • disabled - Управляет атрибутом disabled. При создании флажков, true отключит все флажки. Также вы можете установить disabled на список значений, которые вы хотите отключить при создании флажков.
  • hiddenField - Установите в false, чтобы удалить скрытое поле, которое гарантирует, что значение всегда отправляется.
  • label - Либо false для отключения метки вокруг виджета, либо массив атрибутов для тега label. selected будет добавлен ко всем классам, например, 'class' => 'myclass' , где виджет выбран.

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

Параметры

string $fieldName
Атрибут имени SELECT
array|Traversable $options

Массив элементов OPTION (в виде пар 'значение'=>'Текст'), которые будут использоваться в элементе флажков.

array $attributes optional []
HTML атрибуты элемента select.

Возвращает

string
Отформатированный элемент 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 - Сообщение подтверждения для отображения. Выполнение формы продолжится только после подтверждения.

Параметры

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

Возвращает

string
Тег 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 будет заменена.

Параметры

string $title
Содержимое, которое будет обернуто тегами .
string|array|null $url optional null

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

array $options optional []
Массив HTML атрибутов.

Возвращает

string
Элемент <a /> .

Ссылка

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 для отключения метки вокруг виджета, либо массив атрибутов для тега label. selected будет добавлен ко всем классам, например, 'class' => 'myclass' , где виджет выбран.
  • hiddenField - boolean для указания, хотите ли вы, чтобы результаты radio() включали скрытый ввод со значением ''. Это полезно для создания наборов радио-кнопок, которые не являются непрерывными.
  • disabled - Установите в true или disabled для отключения всех радио-кнопок. Используйте массив значений для отключения определённых радио-кнопок.
  • empty - Установите в true для создания поля ввода со значением '' в качестве первой опции. Когда true метка радио будет 'пустой'. Установите эту опцию в строку, чтобы контролировать значение метки.

Параметры

string $fieldName
Имя поля, например, "modelname.fieldname"
array|Traversable $options optional []
Массив опций радио-кнопок.
array $attributes optional []
Массив атрибутов.

Возвращает

string
Завершенный набор виджетов радио.

Ссылка

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 будут объединены с скрытыми тегами ввода, сгенерированными для компонента безопасности. Это особенно полезно для установки атрибутов 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. При создании поля select, установите значение true, чтобы отключить поле select. Установите массив, чтобы отключить определенные элементы options.

Использование опций

Простой массив создаст обычные опции:

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

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

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

Параметры

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

Возвращает

Cake\View\Widget\WidgetRegistry

year()source public

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

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

Атрибуты:

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

Параметры

строка $fieldName
Префикс имени для элемента SELECT
массив $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
Код, который будет выполнен после того, как пользователь выбрал «ОК»
string $cancelCode optional ''
Код, который будет выполнен после того, как пользователь выбрал «Отмена»
array $options optional []
Массив опций

Возвращает

string
JS-код onclick

addClass()source public

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

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

Параметры

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

Возвращает

array
Массив опций с заданным ключом.

getView()source public

getView( )

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

Возвращает

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

initialize()source public

initialize( array $config )

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

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

Параметры

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

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

_clearIds()source protected

_clearIds( )

Очистить сохраненные постфиксы идентификаторов.

_domId()source protected

_domId( string $value )

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

Параметры

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

Возвращает

string
Сгенерированный идентификатор.

_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 optional []

Список полей, которые исключаются из проверки валидации полей.

Возвращает

array
Данные токена.

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

formatTemplate()source public

formatTemplate( string $name , array $data )

Форматирует строку шаблона с данными $data.

Параметры

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

Возвращает

string

getTemplates()source public

getTemplates( string|null $template null )

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

Параметры

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

Возвращает

string|array

setTemplates()source public

setTemplates( array $templates )

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

Параметры

array $templates
Добавляемые шаблоны.

Возвращает


$this

templater()source public

templater( )

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

Возвращает

Cake\View\StringTemplate

templates()source public

templates( string|null|array $templates null )

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

Deprecated

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

Параметры

string|null|array $templates optional 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 optional false

True для рекурсивного слияния, «shallow» для простого слияния, false для перезаписи, по умолчанию false.

Исключение

Cake\Core\Exception\Exception
при попытке перезаписи существующей конфигурации
END_OF_DOCUMENT_MARKER

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
Значение конфигурации для чтения.

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

$_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.

''

$_registrysource

protected Cake\View\Widget\WidgetRegistry

Реестр для виджетов ввода.

$_unlockedFieldssource

protected array

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

См. также

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

$_valueSourcessource

protected array

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

['context']
END_OF_DOCUMENT_MARKER

$fieldssource

public array

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

[]

$helperssource

public array

Другие используемые помощники (helpers).

['Url', 'Html']

$requestTypesource

public string|null

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

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

$Htmlsource

public Cake\View\Helper\HtmlHelper

$Urlsource

public Cake\View\Helper\UrlHelper

© 2005–2018 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.5/class-Cake.View.Helper.FormHelper.html

Spec-Zone.ru

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