2

我正在尝试验证我的模型,我使用的是 CakePHP 1.2.3.8166 和 mysql 5

我将模型定义为:

<?php
class Actividad extends AppModel {
    var $name = 'Actividad';
    var $validate = array('maxfield' => array(
        'rule'=> array('chkValue'),
        'message'=>'i2'
    ));

    function chkValue($data){
        return $data["maxfield"]>=$data["minfield"]
    }
}

我的表有 2 个字段;maxfield& minfield. 我需要验证maxfield总是 >=minfield但我不知道如何检查minfield价值。

4

2 回答 2

1

您可以使用 $this->data['Actividad']['minfield'] 访问“minfield”的值

于 2009-06-29T12:03:52.440 回答
0

您已经对 maxfield 进行了验证,您只需要对 minfield 做同样的事情。所以你的 $validate 应该是这样的:

var $validate= array(
               'maxfield' => array(
                  'rule'=> 'chkValue',
                  'message'=>'i2'
                ),
               'minfield' => array(
                  'rule'=> 'chkValue',
                  'message'=>'i2'
               )   
        );

顺便说一下。'规则' => 'nameOfValidationFunction'。无需放入数组。

于 2009-06-29T16:53:48.650 回答