Spec-Zone.ru › CakePHP 3.8

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

Возвращает

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

Реализация

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

isCreate()source public

isCreate( )

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

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

Возвращает

boolean

Реализация

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

isPrimaryKey()source public

isPrimaryKey( string $field )

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

Параметры

строка $field

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

Возвращает

boolean

Реализация

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

isRequired()source public

isRequired( string $field )

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

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

Параметры

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

Возвращает

boolean

Реализация

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

primaryKey()source public

primaryKey( )

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

Возвращает

массив

Реализация

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

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

Spec-Zone.ru

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