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

问题描述 投票:0回答:1

我正在使用 CAKEPHP 2.5 并且我正在验证此字段:

  data[Publickey][state]

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

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

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

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

提前致谢

cakephp-2.0
1个回答
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

© www.soinside.com 2019 - 2024. All rights reserved.