Класс EntityContext
Обеспечивает контекст формы вокруг одной сущности и её отношений. Также может использоваться как контекст вокруг массива или итератора сущностей.
Этот класс позволяет интерфейсу FormHelper взаимодействовать с сущностями или коллекциями сущностей.
Важные ключи:
-
entityСущность, с которой работает данный контекст. -
tableЛибо экземпляр ORM\Table для извлечения схемы/валидаторов, массив экземпляров таблиц в случае формы, охватывающей несколько сущностей, или имя(а) таблицы. Если это null, имя(а) таблицы будут определены с использованием соглашений об именовании. -
validatorЛибо Validation\Validator для использования, либо имя метода валидации для вызова на объекте таблицы. Например, 'default'. По умолчанию 'default'. Может быть массивом alias таблицы => валидаторы при работе с связанными формами.
- Cake\View\Form\EntityContext реализует Cake\View\Form\ContextInterface
Краткое описание свойств
-
$_contextprotectedДанные контекста для этого объекта.array -
$_isCollectionprotectedbooleanЛогическое значение для отслеживания того, является ли сущность коллекцией.
- Объект запроса.
$_requestprotected -
$_rootNameprotectedИмя сущности/объекта таблицы верхнего уровня.string -
$_tablesprotectedСловарь таблицarray
Краткое описание методов
- __construct() publicКонструктор.
- _extractMultiple() protected
Вспомогательный метод для извлечения всех значений первичного ключа из массива. Столбец первичного ключа определяется по предоставленному массиву $path.
- _getProp() protectedЧтение значений свойств или обход массивов/итераторов.
- _getTable() protectedПолучение экземпляра таблицы по пути к свойству.
- _getValidator() protected
Получение валидатора, связанного с сущностью, на основе соглашений об именовании.
- _prepare() protectedПодготовка дополнительных данных из контекста.
- attributes() publicПолучение ассоциативного массива других атрибутов для имени поля.
- entity() publicПолучение листовой сущности для заданного пути.
- error() publicПолучение ошибок для заданного поля.
- fieldNames() publicПолучение имён полей из сущности верхнего уровня.
- hasError() publicПроверка наличия ошибки, связанной с полем.
- isCreate() publicПроверка, является ли форма формой создания или обновления.
- isPrimaryKey() publicВозвращает true, если имя переданного поля является частью первичного ключа для этого контекста.
- isRequired() publicПроверка, должно ли поле быть помечено как обязательное.
- primaryKey() publicПолучение данных первичного ключа для контекста.
- type() publicПолучение абстрактного типа поля для заданного имени поля.
- val() publicПолучение значения для заданного пути.
Подробное описание методов
__construct()source public
__construct( Cake\Network\Request $request , array $context )
Конструктор.
Параметры
-
Cake\Network\Request$request - Объект запроса.
- массив
$context - Информация о контексте.
_extractMultiple()source protected
_extractMultiple( array|Traversable $values , array $path )
Вспомогательный метод для извлечения всех значений первичного ключа из массива. Столбец первичного ключа определяется по предоставленному массиву $path.
Параметры
- массив|Перебираемый
$values - Список для извлечения первичных ключей
- массив
$path - Каждый из элементов в пути к имени поля
Возвращает
массив_getProp()source protected
_getProp( mixed $target , string $field )
Чтение значений свойств или обход массивов/итераторов.
Параметры
- смешанный
$target - Сущность/массив/коллекция для извлечения $field.
- строка
$field - Следующее поле для извлечения.
Возвращает
смешанный_getTable()source protected
_getTable( array $parts , boolean $rootFallback true )
Получение экземпляра таблицы по пути к свойству
Параметры
- массив
$parts - Каждый из элементов в пути к имени поля
- булево
$rootFallbackнеобязательно true - Использовать ли обратное ссылочное значение к корневой сущности.
Возвращает
Cake\ORM\Table|булевоЭкземпляр таблицы или false
_getValidator()source protected
_getValidator( array $parts )
Получение валидатора, связанного с сущностью, на основе соглашений об именовании.
Параметры
- массив
$parts - Каждый из элементов в пути к имени поля
Возвращает
Cake\Validation\Validator_prepare()source protected
_prepare( )
Подготовить дополнительные данные из контекста.
Если опция таблицы была передана в конструктор и это была строка, ORM\TableRegistry будет использоваться для получения экземпляра правильной таблицы.
Если в качестве опции таблицы передан объект, он будет использован как есть.
Если опция таблицы не передана, имя таблицы будет получено на основе соглашений об именовании. Эта инференция будет работать с рядом общих объектов, таких как массивы, объекты Collection и ResultSets.
Исключения
RuntimeExceptionКогда объект таблицы не может быть найден/выведен.
attributes()source public
attributes( string $field )
Получение ассоциативного массива других атрибутов для имени поля.
Параметры
- строка
$field - Путь с разделителем точек для получения дополнительных данных.
Возвращает
массивМассив данных, описывающих дополнительные атрибуты поля.
Реализация
Cake\View\Form\ContextInterface::attributes() entity()source public
entity( array|null $path null )
Получение листовой сущности для заданного пути.
Этот метод будет обходить заданный путь и искать листовую сущность. Если путь не содержит листовой сущности, будет возвращён false.
Параметры
- массив|null
$pathнеобязательно null Каждый из элементов в пути к имени поля или null, чтобы получить сущность, переданную в контекст конструктора.
Возвращает
Cake\Datasource\EntityInterface|Перебираемый|массив|булевоИсключения
RuntimeExceptionПри невозможности чтения свойств.
error()source public
error( string $field )
Получить ошибки для указанного поля
Параметры
- строка
$field - Путь с разделителем «точка» для проверки ошибок.
Возвращает
массивМассив ошибок.
Реализация
Cake\View\Form\ContextInterface::error() fieldNames()source public
fieldNames( )
Получить имена полей из сущности верхнего уровня.
Если контекст относится к массиву сущностей, будет использоваться индекс 0.
Возвращает
массивМассив имён полей в таблице/сущности.
Реализация
Cake\View\Form\ContextInterface::fieldNames() hasError()source public
hasError( string $field )
Проверить, есть ли ошибка, связанная с полем
Параметры
- строка
$field - Путь с разделителем «точка» для проверки ошибок.
Возвращает
булевоВозвращает true, если ошибки для поля не пустые.
Реализация
Cake\View\Form\ContextInterface::hasError() isCreate()source public
isCreate( )
Проверить, является ли эта форма операцией создания или обновления.
Если контекст относится к одной сущности, будет использоваться метод isNew() сущности. Если isNew() возвращает null, предполагается операция создания.
Если контекст относится к набору или массиву, будет использоваться первый объект в наборе.
Возвращает
булевоРеализация
Cake\View\Form\ContextInterface::isCreate() isPrimaryKey()source public
isPrimaryKey( string $field )
Возвращает true, если переданное имя поля является частью первичного ключа для данного контекста
Параметры
- строка
$field Путь с разделителем «точка» до поля, для которого требуется значение.
Возвращает
булевоРеализация
Cake\View\Form\ContextInterface::isPrimaryKey() isRequired()source public
isRequired( string $field )
Проверить, должно ли поле быть помечено как обязательное.
Параметры
- строка
$field - Путь с разделителем «точка» до поля, которое нужно проверить.
Возвращает
булевоРеализация
Cake\View\Form\ContextInterface::isRequired() primaryKey()source public
primaryKey( )
Получить данные первичного ключа для контекста.
Получает столбцы первичного ключа из схемы корневой сущности.
Возвращает
булевоРеализация
Cake\View\Form\ContextInterface::primaryKey() type()source public
type( string $field )
Получить абстрактный тип поля для данного имени поля.
Параметры
- строка
$field - Путь с разделителем «точка» для получения типа схемы.
Возвращает
null|строкаАбстрактный тип данных или null.
См.
Cake\Database\TypeРеализация
Cake\View\Form\ContextInterface::type() val()source public
val( string $field )
Получить значение для заданного пути.
Перебирает данные сущности и находит значение для $path.
Параметры
- строка
$field - Путь с разделителем «точка» к значению.
Возвращает
смешанноеЗначение поля или null при ошибке.
Реализация
Cake\View\Form\ContextInterface::val() Подробное описание свойств
$_isCollectionsource
protected булево
Булево значение для отслеживания того, является ли сущность набором.
false
© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.View.Form.EntityContext.html