Cakephp 2即使字段不为空,也需要验证

时间:2017-04-19 14:09:37

标签: cakephp-2.0

我正在使用CAKEPHP 2.5,我正在验证这个字段:

  data[Publickey][state]

这是一个html选择框,我的问题是,即使我从选择框中选择了一个项目,验证显示一条错误消息,说我必须选择一个项目,它表现得好像我没有选择任何一个项目。

在模型中我有这个验证码:

public $validate = array(
        'state' => array(

            'rule' => array('notEmpty'),
            'required' => true,
            'message' => 'Please choose one state'

        ),

我如何正确验证我的意思是,如果我从状态选择框中选择一个选项,验证检测到我选择了一个项目并停止显示错误消息?

提前感谢

1 个答案:

答案 0 :(得分:1)

notEmpty是核心验证规则。我很确定它是导致错误所需的“重复”。如果它不是空白,则填写,这是所需要的结果。

https://book.cakephp.org/2.0/en/models/data-validation.html#Validation::notEmpty

notEmpty已弃用,因此请使用notBlank:

public $validate = array(
    'title' => array(
        'rule' => 'notBlank',
        'message' => 'This field cannot be left blank'
    )
);

由于您希望用户选择某种状态,因此最好使用inList进行验证: https://book.cakephp.org/2.0/en/models/data-validation.html#Validation::inList