Kohana验证 - 为什么我的自定义规则总是返回true?

时间:2018-06-12 04:29:43

标签: php kohana

为什么我的自定义规则总是返回true? 我的控制器:

class Controller_Users extends Controller {
    public function action_func() {
        if ($_POST) {
            $validation = Validation::factory($_POST);
            $validation->rule('field', 'Test::func', array(':value'));
            $check = $validation->check(); // always true
        }
    }
}

上课测试:

class Test {
    static public function func($value) {
        return false;
    }
}

明确表示 - 错误。但是->check()返回true。为什么?以及如何解决它?

1 个答案:

答案 0 :(得分:0)

因为您需要使用alter

$validation->error()

和类测试:

class Controller_Users extends Controller {
    public function action_func() {
        if ($_POST) {
            $validation = Validation::factory($_POST);
            $validation->label('field','Some label')
            $validation->rule('field', 'Test::func', array(':value',':validation'));
            $check = $validation->check(); // always true
        }
    }
}