Spec-Zone.ru › CakePHP 3.6

Класс EntityContext

Предоставляет контекст формы вокруг одной сущности и её отношений. Также может быть использован как контекст вокруг массива или итератора сущностей.

Этот класс позволяет интерфейсу FormHelper взаимодействовать с сущностями или коллекциями сущностей.

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

  • entity Сущность, над которой работает этот контекст.
  • table Либо экземпляр ORM\Table для извлечения схемы/валидаторов, массив экземпляров таблиц в случае формы, охватывающей несколько сущностей, либо имя(а) таблицы. Если значение null, имя(а) таблицы будет определено с помощью соглашений об именовании.
  • validator Либо Validation\Validator для использования, либо имя метода валидации для вызова на объекте таблицы. Например, 'default'. По умолчанию 'default'. Может быть массивом alias=>validators при работе с связанными формами.
Cake\View\Form\EntityContext реализует Cake\View\Form\ContextInterface использует Cake\ORM\Locator\LocatorAwareTrait
Пространство имён: Cake\View\Form
Расположение: View/Form/EntityContext.php

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

  • $_context protected
    array
    Данные контекста для этого объекта.
  • $_isCollection protected
    boolean

    Булево значение для отслеживания того, является ли сущность коллекцией.

  • $_request protected
    Cake\Http\ServerRequest
    Объект запроса.
  • $_rootName protected
    string
    Имя сущности/объекта таблицы верхнего уровня.
  • $_tables protected
    array
    Словарь таблиц
  • $_validator protected
    Cake\Validation\Validator[]
    Словарь валидаторов.

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

  • _tableLocator

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

  • __construct() public
    Конструктор.
  • _extractMultiple() protected

    Вспомогательный метод, используемый для извлечения всех значений первичного ключа из массива. Столбец первичного ключа определяется из массива $path.

  • _getProp() protected
    Чтение значений свойств или обход массивов/итераторов.
  • _getTable() protected
    Получение экземпляра таблицы по пути к свойству
  • _getValidator() protected

    Получение валидатора, связанного с сущностью, на основе соглашений об именовании.

  • _prepare() protected
    Подготовка дополнительных данных из контекста.
  • _schemaDefault() 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\Http\ServerRequest $request , array $context )

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

Параметры

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

_extractMultiple()source protected

_extractMultiple( array|Traversable $values , array $path )

Вспомогательный метод, используемый для извлечения всех значений первичного ключа из массива. Столбец первичного ключа определяется из массива $path.

Параметры

массив|Итерируемый объект $values
Список, из которого необходимо извлечь первичные ключи
массив $path
Каждый из элементов в пути к имени поля

Возвращает

массив|null

_getProp()source protected

_getProp( mixed $target , string $field )

Чтение значений свойств или обход массивов/итераторов.

Параметры

смешанный $target
Сущность/массив/коллекция, из которой извлекается $field.
строка $field
Следующее поле для извлечения.

Возвращает

смешанный

_getTable()source protected

_getTable( array $parts , boolean $fallback = true )

Получение экземпляра таблицы по пути к свойству

Параметры

массив $parts
Каждый из элементов в пути к имени поля
булево $fallback optional true

Использовать ли обратное значение к последней найденной таблице при встрече несуществующего поля/свойства.

Возвращает

Cake\ORM\Table|булево
Экземпляр таблицы или false

_getValidator()source protected

_getValidator( array $parts )

Получение валидатора, связанного с сущностью, на основе соглашений об именовании.

Параметры

массив $parts
Каждый из элементов в пути к имени поля

Возвращает

Cake\Validation\Validator

_prepare()source protected

_prepare( )

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

Если в конструктор был передан параметр table как строка, будет использован TableLocator для получения соответствующего экземпляра таблицы.

Если в качестве параметра table передан объект, он будет использован как есть.

Если параметр table не передан, имя таблицы будет определено на основе соглашений об именовании. Эта инференция будет работать с несколькими распространёнными объектами, такими как массивы, объекты Collection и ResultSets.

Исключения

RuntimeException
При невозможности найти/определить объект таблицы.

_schemaDefault()source protected

_schemaDefault( string $field , Cake\Datasource\EntityInterface $entity )

Получение значения по умолчанию из схемы таблицы для заданного поля сущности.

Параметры

строка $field
Имя поля.
Cake\Datasource\EntityInterface $entity
Сущность.

Возвращает

смешанный

attributes()source public

attributes( string $field )

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

Параметры

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

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

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

Реализация

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

entity()source public

entity( array|null $path = null )

Получить конечную сущность по заданному пути.

Этот метод пройдет по заданному пути и найдет конечную сущность. Если по пути нет конечной сущности, будет возвращено false.

Параметры

array|null $path необязательно null

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

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

Cake\Datasource\EntityInterface|Перебираемый объект|массив|boolean

Исключения

RuntimeException
При невозможности чтения свойств.

error()source public

error( string $field )

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

Параметры

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

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

array
Массив ошибок.

Реализация

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

fieldNames()source public

fieldNames( )

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

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

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

array
Массив имён полей в таблице/сущности.

Реализация

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

hasError()source public

hasError( string $field )

Проверить наличие ошибок для поля

Параметры

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

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

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

Реализация

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

isCreate()source public

isCreate( )

Проверить, является ли форма формой создания или редактирования.

Если контекст предназначен для единственной сущности, будет использован метод isNew() сущности. Если isNew() возвращает null, будет предположено действие создания.

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

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

boolean

Реализация

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

isPrimaryKey()source public

isPrimaryKey( string $field )

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

Параметры

string $field

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

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

boolean

Реализация

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

isRequired()source public

isRequired( string $field )

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

Параметры

string $field
Путь с разделителями «точка» к полю, которое нужно проверить.

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

boolean

Реализация

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

primaryKey()source public

primaryKey( )

Получить данные первичного ключа для контекста.

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

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

array

Реализация

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

type()source public

type( string $field )

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

Параметры

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

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

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

См. также

Cake\Database\Type

Реализация

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

val()source public

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

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

Обрабатывает данные сущности и находит значение для $path.

Параметры

string $field
Путь с разделителями «точка» к значению.
array $options необязательно []

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

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

mixed
Значение поля или null при отсутствии значения.

Реализация

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

Методы, используемые из Cake\ORM\Locator\LocatorAwareTrait

getTableLocator()source public

getTableLocator( )

Получить локатор таблиц.

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

Cake\ORM\Locator\LocatorInterface

setTableLocator()source public

setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )

Установить локатор таблиц.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator
Экземпляр LocatorInterface.

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


$this

tableLocator()source public deprecated

tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator = null )

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

Устарело

3.5.0 Используйте getTableLocator()/setTableLocator() вместо этого.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator необязательно null
Экземпляр LocatorInterface.

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

Cake\ORM\Locator\LocatorInterface

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

$_contextsource

protected array

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

$_isCollectionsource

protected boolean

Булево значение, указывающее, является ли сущность коллекцией.

false

$_requestsource

protected Cake\Http\ServerRequest

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

$_rootNamesource

protected string

Имя объекта сущности верхнего уровня/таблицы.

$_tablessource

protected array

Словарь таблиц

[]

$_validatorsource

protected Cake\Validation\Validator[]

Словарь валидаторов.

[]

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

Spec-Zone.ru

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