如何使用相同的字段名称验证多个字段?

时间:2013-01-29 08:32:37

标签: cakephp

这是$ this-> request-> data:

的结构
 array(
        'Capture' => array(
             'items' => array (
                 0 => array(
                    'description' => '',
                    'amount' => ''
                 )
                 1 => array(
                    'description' => '',
                    'amount' => ''
                 )
            )
        )
)

我必须验证这一点。

1 个答案:

答案 0 :(得分:1)

要验证具有相同字段的多个记录,您可以使用Model::saveAll并传入一个参数,告诉它仅验证。

请注意,我认为您不能以上述格式传递$this->request->dataitems级别会将其丢弃)。它需要采用以下格式:

array(
    'ModelName' => array(
        '0' => array(...)
        '1' => array(...)
        //...
        'n' => array(...)
    ),
)

OR:

array(
     '0' => array(...)
     '1' => array(...)
     //...
     'n' => array(...)
)

因此,请按以下方式将其传递给函数:

$this->Capture->saveAll($this->request->data['Capture']['items'], array('validate' => 'only'));

这是一个类似的问题:

Validating multiple fields with the same name