Spec-Zone.ru › CakePHP 4.2

Класс EntityContext

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

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

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

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

Константы

  • string[]
    VALID_ATTRIBUTES
    ['length', 'precision', 'comment', 'null', 'default']

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

  • $_context protected
    array

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

  • $_isCollection protected
    bool

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

  • $_rootName protected
    string

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

  • $_tableLocator protected
    Cake\ORM\Locator\LocatorInterface|null

    Экземпляр локатора таблиц

  • $_tables protected
    Cake\ORM\Table[]

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

  • $_validator protected
    Cake\Validation\Validator[]

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

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

  • __construct() public

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

  • _extractMultiple() protected

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

  • _getProp() protected

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

  • _getTable() protected

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

  • _getValidator() protected

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

  • _prepare() protected

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

  • _schemaDefault() protected

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

  • attributes() public

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

  • entity() public

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

  • error() public

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

  • fieldNames() public

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

  • getMaxLength() public

    Получение длины поля из валидации.

  • getPrimaryKey() public

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

  • getRequiredMessage() public

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

  • getTableLocator() public

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

  • hasError() public

    Проверка наличия ошибки, привязанной к полю.

  • isCreate() public

    Проверка того, является ли эта форма созданием или обновлением.

  • isPrimaryKey() public

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

  • isRequired() public

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

  • leafEntity() protected

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

  • primaryKey() public deprecated

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

  • setTableLocator() public

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

  • type() public

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

  • val() public

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

END_OF_DOCUMENT_MARKER

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

__construct() public

__construct(array $context)

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

Параметры

array $context

Контекстная информация.

_extractMultiple() protected

_extractMultiple(mixed $values, string[] $path): array|null

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

Параметры

mixed $values

Список, из которого нужно извлечь первичные ключи.

string[] $path

Каждая из частей пути для имени поля.

Возвращает

array|null

_getProp() protected

_getProp(mixed $target, string $field): mixed

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

Параметры

mixed $target

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

string $field

Следующее поле для получения.

Возвращает

mixed

_getTable() protected

_getTable(string[]|stringCake\Datasource\EntityInterface $parts, bool $fallback = true): Cake\ORM\Table|null

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

Параметры

string[]|stringCake\Datasource\EntityInterface $parts

Каждая из частей пути для имени поля.

bool $fallback optional

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

Возвращает

Cake\ORM\Table|null

_getValidator() protected

_getValidator(array $parts): Cake\Validation\Validator

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

Параметры

array $parts

Каждая из частей пути для имени поля.

Возвращает

Cake\Validation\Validator

Выбрасывает

RuntimeException
Если валидатор не может быть получен на основе частей.

_prepare() protected

_prepare(): void

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

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

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

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

Возвращает

void

Выбрасывает

RuntimeException
Когда объект таблицы не может быть найден/выведен.

_schemaDefault() protected

_schemaDefault(string[] $parts): mixed

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

Параметры

string[] $parts

Каждая из частей пути для имени поля.

Возвращает

mixed

attributes() public

attributes(string $field): array

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

Параметры

string $field

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

Возвращает

array

entity() public

entity(array|null $path = null): Cake\Datasource\EntityInterface|iterable|null

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

Этот метод будет обходить заданный путь и находить сущность или значение массива для заданного пути.

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

Параметры

array|null $path optional

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

Возвращает

Cake\Datasource\EntityInterface|iterable|null

Выбрасывает

RuntimeException
Когда свойства не могут быть прочитаны.

error() public

error(string $field): array

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

Параметры

string $field

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

Возвращает

array

fieldNames() public

fieldNames(): string[]

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

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

Возвращает

string[]

getMaxLength() public

getMaxLength(string $field): int|null

Получение длины поля из валидации.

Параметры

string $field

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

Возвращает

int|null

getPrimaryKey() public

getPrimaryKey(): string[]

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

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

Возвращает

string[]

getRequiredMessage() public

getRequiredMessage(string $field): string|null

Получает сообщение об ошибке "required" по умолчанию для поля.

Параметры

string $field

Возвращает

string|null

getTableLocator() public

getTableLocator(): Cake\ORM\Locator\LocatorInterface

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

Возвращает

Cake\ORM\Locator\LocatorInterface

hasError() public

hasError(string $field): bool

Проверка наличия ошибки, прикрепленной к полю.

Параметры

string $field

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

Возвращает

bool

isCreate() public

isCreate(): bool

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

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

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

Возвращает

bool

isPrimaryKey() public

isPrimaryKey(string $field): bool

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

Параметры

string $field

Возвращает

bool

isRequired() public

isRequired(string $field): bool|null

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

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

Параметры

string $field

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

Возвращает

bool|null

leafEntity() protected

leafEntity(array|null $path = null): array

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

Обход пути до тех пор, пока сущность не будет найдена. Списки, содержащие сущности, будут пройдены, если первый элемент содержит сущность. В противном случае предполагается, что содержащая сущность является конечной.

Параметры

array|null $path optional

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

Возвращает

array

Выбрасывает

RuntimeException
Когда свойства не могут быть прочитаны.

primaryKey() public

primaryKey(): string[]

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

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

Возвращает

string[]

setTableLocator() public

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

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

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator

Экземпляр LocatorInterface.

Возвращает

$this

type() public

type(string $field): string|null

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

Параметры

string $field

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

Возвращает

string|null

См. также

\Cake\Database\TypeFactory

val() public

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

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

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

Параметры

string $field

Путь через точки к значению.

array $options optional

Параметры:

Возвращает

mixed

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

$_context protected

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

Тип

array

$_isCollection protected

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

Тип

bool

$_rootName protected

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

Тип

string

$_tableLocator protected

Экземпляр локатора таблицы

Тип

Cake\ORM\Locator\LocatorInterface|null

$_tables protected

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

Тип

Cake\ORM\Table[]

$_validator 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/4.2/class-Cake.View.Form.EntityContext.html

Spec-Zone.ru

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