CakePHP会自动为我做一些客户端表单验证 - 检查字段是否为空或电子邮件字段实际上是否为电子邮件地址。不正确的字段会得到一个很好的小下拉列表,并显示错误消息。
这在哪里管理?我想在confirm_email字段中添加这种验证。
答案 0 :(得分:0)
$这 - >形状配合>输入( '文本框',阵列( '必要'=>真));
会做一些HTML需要的字段
答案 1 :(得分:0)
我怀疑你在谈论HTML5 Form Validation。
在这种情况下,由于输入中的required="required"
和type="email"
等属性,您可以看到此类下拉列表。
可以在src/Model/Table/SomeTable.php
个文件中管理验证。请参阅下面的示例UsersTable.php
。
class UsersTable extends Table {
public function validationDefault(\Cake\Validation\Validator $validator) {
$validator->add('email', [
'email' => [
'rule' => array('email', true),
'message' => __('Please, set valid email address')
]
])
->add('password', [
'length' => [
'rule' => ['minLength', '8'],
'message' => __('Password must have at least 8 characters'),
]
])
->add('password_confirmation', [
'length' => [
'rule' => ['minLength', '8'],
'message' => __('Password must have at least 8 characters')
],
'compare' => [
'rule' => ['compareWith', 'password'],
'message' => __('Passwords should be the same'),
]
])
return $validator;
}
}
请注意password
和password_confirmation
。您可以使用规则compareWith
以类似方式解决问题。
另见validations的官方文档。