需要我有一大堆的名称/电子邮件字段的在我的形式类似的这样的表单字段中的一种:制作组在CakePHP中
data[Friend][0][name]
data[Friend][1][name]
data[Friend][2][name]
等
和
data[Friend][0][email]
data[Friend][1][email]
data[Friend][2][email]
等
我有一个自定义验证规则,每个检查是否填写相应的字段。如果数据[朋友] [2] [名],然后数据[朋友] [2] [邮件]必须在充满
仅供参考,继承人什么的两条规则一个样子:
我的表单验证规则:(我有一个电子邮件验证过,但是这无关紧要这里)
'name' => array(
'checkEmail' => array(
'rule' => 'hasEmail',
'message' => 'You must fill in the name field',
'last' => true
)
)
我的自定义规则代码:
function hasEmail($data){
$name = array_values($data);
$name = $name[0];
if(strlen($name) == 0){
return empty($this->data['Friend']['email']);
}
return true;
}
我需要它,以便对应该作为填充至少。它可以是任何只要索引相对应的。
我无法想象,如果我将表单规则设置为required或allowEmpty false,它将在所有空字段上失败。我如何检查1对的存在,如果存在,继续?另外,我需要去除所有剩余的空[Friend]字段,所以我的saveAll()不会保存一行空行,但我认为我可以在控制器中使用提取来处理该部分。主要问题是这种验证。谢谢。