CakePHP
  • 文档
    • 书籍
    • API
    • 视频
    • 报告安全问题
    • 隐私政策
    • 标识 & 商标
  • 商业解决方案
  • 商品
  • 公路旅行
  • 团队
  • 社区
    • 社区
    • 参与进来
    • 问题 (Github)
    • 烘焙坊
    • 精选资源
    • 培训
    • 聚会
    • 我的 CakePHP
    • CakeFest
    • 时事通讯
    • 领英
    • YouTube
    • 脸书
    • 推特
    • Mastodon
    • 帮助 & 支持
    • 论坛
    • Stack Overflow
    • IRC
    • Slack
    • 付费支持
CakePHP

C CakePHP 5.1 Chiffon API

  • 项目
    • CakePHP
      • CakePHP
      • Chronos
      • Elastic Search
      • 队列
  • 版本
    • 5.1
      • 5.1
      • 5.0
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

命名空间

  • 全局
  • Cake
    • 缓存
    • 集合
    • 命令
    • 控制台
    • 控制器
    • 核心
    • 数据库
    • 数据源
    • 错误
    • 事件
    • 表单
    • Http
    • I18n
    • 日志
    • 邮件
    • 网络
    • ORM
    • 路由
    • 测试套件
    • 实用程序
    • 验证
    • 视图
      • 异常
      • 表单
      • 助手
      • 小部件

类 EntityContext

为单个实体及其关系提供一个表单上下文。它也可以用作围绕实体数组或迭代器的上下文。

此类允许 FormHelper 与实体或实体集合交互。

重要键

  • entity 此上下文正在操作的实体。
  • table 要从中获取模式/验证器的 ORM\Table 实例,跨越多个实体的表实例数组,或表的名称。如果为 null,则将使用命名约定确定表名称。
  • validator 要使用的 Validation\Validator,或要在表对象上调用的验证方法的名称。例如 'default'。默认为 'default'。在处理关联表单时可以是表别名=>验证器数组。
命名空间: Cake\View\Form

常量

  • list<string>
    VALID_ATTRIBUTES ¶
    ['length', 'precision', 'comment', 'null', 'default']

属性摘要

  • $_context protected
    array<string, mixed>

    此对象的上下文数据。

  • $_isCollection protected
    bool

    用于跟踪实体是否为集合的布尔值。

  • $_rootName protected
    string

    顶级实体/表对象的名称。

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

    表定位器实例

  • $_tables protected
    arrayCake\ORM\Table>

    一个表字典

  • $_validator protected
    arrayCake\Validation\Validator>

    验证器字典。

  • $defaultTable protected
    string|null

    此对象的默认表别名。

方法摘要

  • __construct() public

    构造函数。

  • _extractMultiple() protected

    用于从数组中提取所有主键值的辅助方法,主键列是从提供的 $path 数组中推断出来的

  • _getProp() protected

    读取属性值或遍历数组/迭代器。

  • _getTable() protected

    从属性路径获取表实例

  • _getValidator() protected

    根据命名约定获取与实体关联的验证器。

  • _prepare() protected

    从上下文中准备一些其他数据。

  • _schemaDefault() protected

    从给定实体字段的表模式获取默认值。

  • attributes() public

    获取字段名称的其他属性的关联数组。

  • entity() public

    为给定路径获取实体或数据值

  • error() public

    获取给定字段的错误

  • fetchTable() public

    获取表实例的便捷方法。

  • fieldNames() public

    从顶级实体获取字段名称。

  • getMaxLength() public

    从验证获取字段长度

  • getPrimaryKey() public

    获取上下文的​​主键数据。

  • getRequiredMessage() public

    获取字段的默认“必填”错误消息

  • getTableLocator() public

    获取表定位器。

  • hasError() public

    检查字段是否附加了错误

  • isCreate() public

    检查此表单是创建还是更新。

  • isPrimaryKey() public

    如果传递的字段名称是此上下文的​​主键的一部分,则返回 true

  • isRequired() public

    检查字段是否应标记为必填。

  • leafEntity() protected

    获取给定路径的终端或叶实体。

  • setTableLocator() public

    设置表定位器。

  • type() public

    获取给定字段名称的抽象字段类型。

  • val() public

    获取给定路径的值。

方法详细

__construct() ¶ public

__construct(array<string, mixed> $context)

构造函数。

参数
array<string, mixed> $context

上下文信息。

_extractMultiple() ¶ protected

_extractMultiple(mixed $values, list<string> $path): array|null

用于从数组中提取所有主键值的辅助方法,主键列是从提供的 $path 数组中推断出来的

参数
mixed $values

要从中提取主键的列表

list<string> $path

字段名称路径中的每个部分

返回值
array|null

_getProp() ¶ protected

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

读取属性值或遍历数组/迭代器。

参数
mixed $target

要从中获取 $field 的实体/数组/集合。

string $field

要获取的下一个字段。

返回值
mixed

_getTable() ¶ protected

_getTable(Cake\Datasource\EntityInterface|list<string>|string $parts, bool $fallback = true): Cake\ORM\Table|null

从属性路径获取表实例

参数
Cake\Datasource\EntityInterface|list<string>|string $parts

字段名称路径中的每个部分

bool $fallback optional

当遇到不存在的字段/属性时,是否回退到最后一个找到的表。

返回值
Cake\ORM\Table|null

_getValidator() ¶ protected

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

根据命名约定获取与实体关联的验证器。

参数
array $parts

字段名称路径中的每个部分

返回值
Cake\Validation\Validator
抛出
Cake\Core\Exception\CakeException
如果无法根据部分检索验证器。

_prepare() ¶ protected

_prepare(): void

从上下文中准备一些其他数据。

如果构造函数提供了表选项并且它是字符串,则 TableLocator 将用于获取正确的表实例。

如果提供对象作为表选项,则将按原样使用它。

如果未提供表格选项,将根据命名约定推断表格名称。 此推断将适用于许多常见的对象,例如数组、集合对象和结果集。

返回值
void
抛出
Cake\Core\Exception\CakeException
当无法定位/推断表格对象时。

_schemaDefault() ¶ protected

_schemaDefault(list<string> $parts): mixed

从给定实体字段的表模式获取默认值。

参数
list<string> $parts

字段名称路径中的每个部分

返回值
mixed

attributes() ¶ public

attributes(string $field): array

获取字段名称的其他属性的关联数组。

参数
string $field

用于获取额外数据的点分隔路径。

返回值
array

entity() ¶ public

entity(list<string>|null $path = null): Cake\Datasource\EntityInterface|iterable|null

为给定路径获取实体或数据值

此方法将遍历给定的路径并找到给定路径的实体或数组值。

如果您只需要路径的终端实体,请使用 leafEntity 代替。

参数
list<string>|null $path optional

字段名称路径中的各个部分,或者为 null 以获取构造函数上下文中传递的实体。

返回值
Cake\Datasource\EntityInterface|iterable|null
抛出
Cake\Core\Exception\CakeException
当无法读取属性时。

error() ¶ public

error(string $field): array

获取给定字段的错误

参数
string $field

用于检查错误的点分隔路径。

返回值
array

fetchTable() ¶ public

fetchTable(string|null $alias = null, array<string, mixed> $options = []): Cake\ORM\Table

获取表实例的便捷方法。

参数
string|null $alias optional

要获取的别名。 应为驼峰式命名。 如果为 null,则使用 $defaultTable 属性的值。

array<string, mixed> $options optional

要使用这些选项构建表格。 如果表格已加载,则注册表选项将被忽略。

返回值
Cake\ORM\Table
抛出
Cake\Core\Exception\CakeException
如果 `$alias` 参数和 `$defaultTable` 属性都为 `null`。
参见
\Cake\ORM\TableLocator::get()

fieldNames() ¶ public

fieldNames(): list<string>

从顶级实体获取字段名称。

如果上下文是针对实体数组,则将使用第 0 个索引。

返回值
list<string>

getMaxLength() ¶ public

getMaxLength(string $field): int|null

从验证获取字段长度

参数
string $field

要检查的字段的点分隔路径。

返回值
int|null

getPrimaryKey() ¶ public

getPrimaryKey(): list<string>

获取上下文的​​主键数据。

从根实体的模式中获取主键列。

返回值
list<string>

getRequiredMessage() ¶ public

getRequiredMessage(string $field): string|null

获取字段的默认“必填”错误消息

参数
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
抛出
Cake\Core\Exception\CakeException
当无法读取属性时。

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<string, mixed> $options = []): mixed

获取给定路径的值。

遍历实体数据并找到 $path 的值。

参数
string $field

值的点分隔路径。

array<string, mixed> $options optional

选项

返回值
mixed

属性详细信息

$_context ¶ protected

此对象的上下文数据。

类型
array<string, mixed>

$_isCollection ¶ protected

用于跟踪实体是否为集合的布尔值。

类型
bool

$_rootName ¶ protected

顶级实体/表对象的名称。

类型
string

$_tableLocator ¶ protected

表定位器实例

类型
Cake\ORM\Locator\LocatorInterface|null

$_tables ¶ protected

一个表字典

类型
arrayCake\ORM\Table>

$_validator ¶ protected

验证器字典。

类型
arrayCake\Validation\Validator>

$defaultTable ¶ protected

此对象的默认表别名。

类型
string|null
OpenHub
Pingping
Linode
  • 业务解决方案
  • 展示
  • 文档
  • 书籍
  • API
  • 视频
  • 报告安全问题
  • 隐私政策
  • 标识 & 商标
  • 社区
  • 参与进来
  • 问题 (Github)
  • 烘焙坊
  • 精选资源
  • 培训
  • 聚会
  • 我的 CakePHP
  • CakeFest
  • 时事通讯
  • 领英
  • YouTube
  • 脸书
  • 推特
  • Mastodon
  • 帮助 & 支持
  • 论坛
  • Stack Overflow
  • IRC
  • Slack
  • 付费支持

使用 CakePHP API 文档 生成