Phalcon模型验证中的可选字段

时间:2016-03-05 10:32:53

标签: php phalcon

我已经验证了Phalcon模型中的一些字段,如下所示

class Ads extends Phalcon\Mvc\Collection
{

    public function validation()
    {
        $this->validate(
            new InclusionIn(
                array(
                    "field"   => "type",
                    "message" => "Type must be: mechanical or virtual",
                    "domain"  => array("Mechanical", "Virtual")
                )
            )
        );

        $this->validate(
            new Numericality(
                array(
                    "field"   => "price",
                    "message" => "Price must be numeric"
                )
            )
        );

        return $this->validationHasFailed() != true;
    }

}

如何将某些字段定义为可选字段,将某些字段定义为验证中的必填字段?

可选字段:
例如,当价格存在时,验证它,当不是价格时,忽略它。

必填字段:
当价格不存在时,不要将数据插入数据库并返回相关的错误消息。

1 个答案:

答案 0 :(得分:4)

使用allowEmpty作为

$this->validate(
            new Numericality(
                array(
                    "field"   => "price",
                    "message" => "Price must be numeric",
                    "allowEmpty" => true
                )
            )
        );

当价格字段为空时,它将无法验证。