Spec-Zone.ru › CakePHP 3.7

Класс ArrayContext

Предоставляет базовый контекст поставщик на основе массива для FormHelper.

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

Важные ключи:

  • defaults Значения по умолчанию для полей. Эти значения будут использоваться, когда данные запроса не заданы. Данные должны быть вложены, следуя разделителям точек в путях доступа к вашим полям.
  • required Вложенный массив полей, отношений и логических флагов, указывающих, является ли поле обязательным. Значение также может быть строкой, используемой в качестве сообщения об ошибке по требованию.
  • schema Массив данных, эмулирующий структуры столбцов, которые использует Cake\Database\Schema\Schema. Этот массив позволяет управлять выведенным типом для полей и позволяет автоматически генерировать атрибуты, такие как maxlength, step и другие атрибуты HTML. Если вы хотите, чтобы работало определение первичного ключа/id, убедитесь, что вы предоставили массив _constraints, содержащий primary. См. пример ниже.
  • errors Массив ошибок валидации. Ошибки должны быть вложены, следуя разделителям точек в путях доступа к вашим полям.

    Пример

    $data = [
    'schema' => [
     'id' => ['type' => 'integer'],
     'title' => ['type' => 'string', 'length' => 255],
     '_constraints' => [
       'primary' => ['type' => 'primary', 'columns' => ['id']]
     ]
    ],
    'defaults' => [
     'id' => 1,
     'title' => 'First post!',
    ],
    'required' => [
     'id' => true, // will use default required message
     'title' => 'Please enter a title',
     'body' => false,
    ],
    ];
Cake\View\Form\ArrayContext реализует Cake\View\Form\ContextInterface
Пространство имен: Cake\View\Form
Расположение: View/Form/ArrayContext.php

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

  • $_context protected
    array
    Данные контекста для этого объекта.
  • $_request protected
    Cake\Http\ServerRequest
    Объект запроса.

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

  • __construct() public
    Конструктор.
  • attributes() public
    Получить ассоциативный массив дополнительных атрибутов для имени поля.
  • error() public
    Получить ошибки для заданного поля
  • fieldNames() public
    Получить имена полей верхнего уровня в этом контексте.
  • getMaxLength() public
    Получить длину поля из валидации
  • getRequiredMessage() public
  • hasError() public
    Проверить, есть ли у поля ошибка
  • isCreate() public
    Возвращает, является ли эта форма для операции создания.
  • isPrimaryKey() public
    Возвращает true, если переданное имя поля является частью первичного ключа для этого контекста
  • isRequired() public
    Проверить, является ли заданное поле 'обязательным'.
  • primaryKey() public
    Получить поля, используемые в контексте, как первичный ключ.
  • stripNesting() protected
    Удалить любое числовое вложение
  • type() public
    Получить абстрактный тип поля для заданного имени поля.
  • val() public
    Получить текущее значение для заданного поля.

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

__construct()source public

__construct( Cake\Http\ServerRequest $request , array $context )

Конструктор.

Параметры

Cake\Http\ServerRequest $request
Объект запроса.
массив $context
Информация о контексте.

attributes()source public

attributes( string $field )

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

Параметры

строка $field
Путь с разделителями точек для получения дополнительных данных.

Возвращает

массив
Массив данных, описывающий дополнительные атрибуты поля.

Реализация

Cake\View\Form\ContextInterface::attributes()

error()source public

error( string $field )

Получить ошибки для заданного поля

Параметры

строка $field
Путь с разделителями точек для проверки ошибок.

Возвращает

массив

Массив ошибок, пустой массив будет возвращен, когда контекст не содержит ошибок.


Реализация

Cake\View\Form\ContextInterface::error()

fieldNames()source public

fieldNames( )

Получить имена полей верхнего уровня в этом контексте.

Возвращает

массив строк
Список имен полей в контексте.

Реализация

Cake\View\Form\ContextInterface::fieldNames()

getMaxLength()source public

getMaxLength( string $field )

Получить длину поля из валидации

В этом классе контекста это просто определяется массивом 'length'.

Параметры

строка $field
Путь с разделителями точек для проверки обязательности.

Возвращает

целое число|null

getRequiredMessage()source public

getRequiredMessage( $field )

hasError()source public

hasError( string $field )

Проверить, есть ли у поля ошибка

Параметры

строка $field
Путь с разделителями точек для проверки ошибок.

Возвращает

булево значение
Возвращает true, если ошибки для поля не пустые.

Реализация

Cake\View\Form\ContextInterface::hasError()

isCreate()source public

isCreate( )

Возвращает, является ли эта форма для операции создания.

Для того чтобы этот метод возвращал true, ограничение первичного ключа должно быть определено в данных 'schema', а данные 'defaults' должны содержать значение для всех полей в ключе.

Возвращает

булево значение

Реализация

Cake\View\Form\ContextInterface::isCreate()

isPrimaryKey()source public

isPrimaryKey( string $field )

Возвращает true, если переданное имя поля является частью первичного ключа для этого контекста

Параметры

строка $field

Путь с разделителями точек к полю, для которого требуется значение.

Возвращает

булево значение

Реализация

Cake\View\Form\ContextInterface::isPrimaryKey()

isRequired()source public

isRequired( string $field )

Проверить, является ли заданное поле 'обязательным'.

В этом классе контекста это просто определяется массивом 'required'.

Параметры

строка $field
Путь с разделителями точек для проверки обязательности.

Возвращает

булево значение

Реализация

Cake\View\Form\ContextInterface::isRequired()

primaryKey()source public

primaryKey( )

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

Возвращает

массив

Реализация

Cake\View\Form\ContextInterface::primaryKey()
END_OF_DOCUMENT_MARKER

stripNesting()source protected

stripNesting( string $field )

Удаляет любое числовое вложение

Например, users.0.age будет отображено как users.age

Параметры

строка $field
Путь, разделенный точками

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

строка
Строка с удаленным числовым вложением

type()source public

type( string $field )

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

Параметры

строка $field
Путь, разделенный точками, для получения типа схемы.

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

null|строка
Абстрактный тип данных или null.

См. также

Cake\Database\Type

Реализация

Cake\View\Form\ContextInterface::type()

val()source public

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

Получить текущее значение для заданного поля.

Этот метод объединит текущие данные запроса и массив 'defaults'.

Параметры

строка $field

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

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

Параметры: - default: Значение по умолчанию, которое будет возвращено, если значение не найдено в данных запроса или записях контекста. - schemaDefault: Булевое значение, указывающее, следует ли использовать значение по умолчанию из схемы контекста, если оно не задано явно.

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

смешанное

Реализация

Cake\View\Form\ContextInterface::val()

Магические методы, унаследованные от Cake\View\Form\ContextInterface

getMaxLength(), getRequiredMessage()

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

$_contextsource

protected массив

Данные контекста для этого объекта.

$_requestsource

protected Cake\Http\ServerRequest

Объект запроса.

© 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.7/class-Cake.View.Form.ArrayContext.html

Spec-Zone.ru

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