cakephp - 为什么我的自定义验证方法以数组格式返回错误消息
问题描述
这是我的自定义验证方法:
$validator
->notEmpty('postcode', 'Postcode should not be empty')
->add('postcode', [
'postcode_valid'=> [
'provider' => 'table',
'rule' => 'validatePostcode',
'message' => 'Bitte geben Sie eine gültige Postleitzahl ein',
]
]);
如果在邮政编码字段中输入了一些无效数据errors()
,则表的方法将返回如下数组:
Array
(
[address] => Array
(
[postcode] => Array
(
[postcode_valid] => Bitte geben Sie eine gültige Postleitzahl ein
)
)
)
为什么有一个额外的数组?所有其他验证错误消息都只是字符串。我可以将我的自定义验证方法更改为只返回一个字符串吗?
解决方案
验证错误不是由主模型创建的,而是由关联模型创建的,因此还有一个以模型名称作为键的包装数组。
(在我的示例中,它是一个注册表单。主模型是user
并且表单的某些字段属于关联模型address
。其中一个字段创建了验证错误)。
推荐阅读
- ios - 如何在我的 iPhone 上安装 Flutter 版本的 iOS 应用程序?
- ngrx - 使用带有 ngrx 数据的选择器
- rust - rust 交叉编译 arm:skylake 不是此目标的公认处理器
- sql - Oracle 用户如何在 oracle18c 中查询另一个模式中的表?
- php - 如何对数组中的字符串值求和
- node.js - 如何根据另一个属性选择一个属性 - mongodb
- excel - excel电子表格优化器
- javascript - 未捕获(承诺中)类型错误:无法读取未定义的属性“模式”
- boost - cmake find_package(Boost) 选择 PATH
- javascript - 我想在视图端javascript中使用控制器中的数据